我想从“objective-c编程”(第四版)开始学习Objective-C。我在Windows xp上工作。为了编译objective-c程序,我安装了GNUstep,当我输入这个示例时,我在一些教程中找到了:
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSLog (@"hello world");
[pool drain];
return 0;
}这一切都很好。但当我尝试输入本书中的第一个示例时:
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
@autoreleasepool {
NSLog (@"Programming is fun!");
}
return 0;
}我得到了很多错误:

有人知道我做错了什么吗?谢谢你的帮助。
发布于 2012-02-24 19:04:25
这是因为@autoreleasepool是LLVM编译器引入的一个新特性,所以基本上您的编译器不会理解如何处理它。当苹果引入ARC时,这是语言上的一个必要的改变,所以它现在是创建自动释放池的标准方式。
https://stackoverflow.com/questions/9429593
复制相似问题