使用ARC,我是否仍需要遵循旧的保留发布方式?

时间:2012-12-17 01:28:32

标签: objective-c cocoa-touch memory-management automatic-ref-counting

Pre-ARC,这是您为属性设置值以避免内存泄漏的方法:

NSDictionary *tempDict = [[NSDictionary alloc]init];
self.dictionary = tempDict;
[tempDict release];

但是现在有了arc,我们还需要使用2行样式,还是只使用单行设置器?

self.dictionary = [[NSDictionary alloc]init];

NSDictionary *tempDict = [[NSDictionary alloc]init];
self.dictionary = tempDict;

另外,在一般的iOS开发中,大多数时候只使用属性是否安全,不再直接使用实例变量?

1 个答案:

答案 0 :(得分:1)

您可以使用单行样式。

也许我不知道“安全”是什么意思。在ARC下,无论使用属性,实例变量还是混合,都可以确保正确保留和释放对象。

如果没有ARC,通常使用属性设置器来确保正确保留和释放对象通常更安全(如不易出现人为错误)。