Windows og objektiv-c

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg ønsker at begynde at lære mål-c med bog: Programmering i mål-C (4. udgave). Jeg arbejder på Windows XP. For at kompilere mål-c programmer installerer jeg GNUstep, og når jeg skriver dette eksempel, hvad jeg fandt i nogle selvstudier:


#import <Foundation/Foundation.h>

int main (int argc, const char * argv[])
{
    NSAutoreleasePool * pool = [**NSAutoreleasePool alloc] init];

    NSLog (@"hello world");
    [pool drain];
    return 0;
}


Det virker fint. Men når jeg forsøger at skrive første eksempel fra denne bog:


#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
@autoreleasepool {
    NSLog (@"Programming is fun!");
}
return 0;
}


Jeg får mange fejl:


Hvad jeg får ib-konsol


Ved nogen, hvad jeg gør forkert? Tak for enhver hjælp.

Bedste reference


Dette skyldes, at @autoreleasepool er en ny funktion introduceret med LLVM compileren, så i grunden har din kompilator ikke forstået, hvordan man behandler dette. Da Apple introducerede ARC, var dette en nødvendig ændring i sproget, og så er det nu standardvejen at skabe autorelease pools.