XCode 4.2.1 @autoreleasepool无效

时间:2012-01-02 16:12:27

标签: xcode nsautoreleasepool

我有一个带有Xcode 4.2.1的控制台应用程序,关键字@autolreleasepool没有编译: Compiler error 似乎为我的控制台应用程序正确设置了编译器: Project build settings 你有什么建议吗?我想了解为什么如果我有Xcode 4.2.1新关键字不起作用,我知道如何使用旧语法编写autoreleasepool。

更新

这是无法编译的代码

#include <CoreFoundation/CoreFoundation.h>

int main (int argc, const char * argv[])
{
    @autoreleasepool{

        NSMutableArray *array;
        array = [[NSMutableArray alloc] init];
        int i;
        for (i = 0; i < 10; i++) {
            NSNumber *newNumber =
            [[NSNumber alloc] initWithInt:(i * 3)];
            [array addObject:newNumber];
        }
        for ( i = 0; i < 10; i++) {
            NSNumber *numberToPrint = [array objectAtIndex:i];
            NSLog(@"The number at index %d is %@",  i, numberToPrint);
        }

    }
    return 0;
}

2 个答案:

答案 0 :(得分:1)

我发现了这个问题! 我没有使用Type =“Foundation”创建命令行项目,而是使用了Type =“Core Foundation”。我把它改成了“基础”,现在它编译了!

答案 1 :(得分:0)

是否为此文件启用了ARC?检查项目/目标级别设置和文件的各个编译器标志。

相关问题