这个代码由objective-c出了什么问题

时间:2012-08-29 08:50:38

标签: objective-c

<问题【问题】code1无法编译,但code2没有问题。所以为什么? 【CODE1】

#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]){
    @autoreleasepool{
        NSLog(@"\nProgram is working........\n");
        int a=15;
        int b=55;
        int sum=0;
        sum=a+b;
        NSLog(@"The equality : %i + %i= %i\n",a,b,sum);
        NSLog(@"Program is over!\n");
   }
   return 0;
}

【码2】

#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]){
    NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];
    NSLog(@"\nProgram is working........\n");
    int a=15;
    int b=55;
    int sum=0;
    sum=a+b;
    NSLog(@"The equality : %i + %i= %i\n",a,b,sum);
    NSLog(@"Program is over!\n");
    return 0;
}

【通知】

此编程环境由GNU Gcc在win7下建立。

希望各位说的详细些,非常感谢!

1 个答案:

答案 0 :(得分:5)

@autoreleasepool构造是Apple的LLVM编译器的一个功能,在GCC中不可用。