sdk5的xcode自带了arc,虽然arc是比gc强大很多,但由于开发的习惯性,还有框架不适应,在arc还没足够稳定和安全以前,暂时还是使用手动alloc和release等。

 

至于如果取消arc,分3步:

 

1、project -> Build settings -> Apple LLVM complier 3.0 - Language -> objective-C Automatic Reference Counting设置为NO;

 

 

2、修改main.h

 

 

C代码  xcode4.2中如何取消ARC_xcode4.2中如何取消ARC
  1. @autoreleasepool {  
  2.         return UIApplicationMain(argc, argv, nil,    NSStringFromClass([LTAppDelegate class]));  
  3.  }  

 

修改为:

 

 

C代码  xcode4.2中如何取消ARC_xcode4.2中如何取消ARC
  1. NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];  
  2.     int retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([LTAppDelegate class]));  
  3.     [pool release];  
  4.     return retVal;  

 

 其中LTAppDelegate就是你的appDelegate。

 

3、修改AppDelegate

 

C代码  xcode4.2中如何取消ARC_xcode4.2中如何取消ARC
  1. @property (retain, nonatomic) UIWindow *window;  

 将strong修改为retain。

 

最后别忘了添加dealloc

 

C代码  xcode4.2中如何取消ARC_xcode4.2中如何取消ARC
  1. -(void)dealloc  
  2. {  
  3.     [_window release];  
  4.     [super dealloc];  
  5. }