我应该继续在自动参考计数(ARC)下使用iVar和@property(非原子,保留)加@synthesize吗?

时间:2011-08-23 16:14:27

标签: ios xcode4 ios5 automatic-ref-counting

就像一个doop我已经在接口.h文件中声明了Instant Variables(iVar)然后@property一段时间了。

@interface MainGameViewController : UIViewController {
     UserFactorsViewController *userFactorsViewController;
     UITableView *myTableView;
}
@property (nonatomic, retain) UserFactorsViewController *userFactorsViewController;
@property (nonatomic, retain) IBOutlet UITableView *myTableView;

在自动参考计数下,我应该省去iVar并全部使用@property吗?我是否应该在财产中使用“保留”一词?如果我正在部署iOS 4.3,我还应该使用ARC吗?

1 个答案:

答案 0 :(得分:10)

不要感觉像是一个doop,即使编译器会为你添加ivars如果你不包含它们,许多人仍然声明它们(许多书籍作者)使代码更容易阅读(更容易区分ivar和财产)。

现在创建属性时,Apple希望您根据对象图进行思考,因此对“强”和“弱”属性属性进行一些研究,而不是保留和释放。

此外,iOS 4被设置为ARC的目标,所以你应该没问题。但我相信如果您想支持iOS 3.0,您必须像以前一样手动管理保留和发布。