我以前写在标题变量不使用的特性:代码重写为在Objective-C ARC摆脱@property的ARC之前
@interface MyViewController : UIViewController {
NSString *prop1;
}
@end
然后在.m文件我用保留/释放:
-(void)initVar {
prop = @"initialized variable";
[prop retain];
}
-(void)dealloc{
[prop release];
}
在尝试过ARC一段时间后,我得到了很多内存管理问题,在某种意义上说,许多对象被释放。我通过将ivar移动到@property并使用点符号找到了最快(但很脏)的解决方案。
我后来添加了readonly属性,因为没有必要访问控制器外部。 我的问题是,在ARC环境中,我如何重写上面的代码来ged摆脱@property,特别是我关心的是视图控制器,他们可以在应用程序的生命期间多次获取alloc/dealloc。
是的,它只是快速的代码。为什么dealloc与非弧编译器错误?我同意这是一个风格问题,这就是为什么我想删除所有@prop。所以,据我了解,在ARC头文件中声明var时,应该让我的内存管理安全吗? – Leonardo 2012-02-14 07:51:04