我应该在dealloc中释放实例变量和属性吗?
据苹果对View Controller Lifecycle文档,我注意到有关dealloc方法如下:我应该在dealloc中释放实例变量和属性吗?
重写此方法只执行您 视图控制器类的任何最后一分钟的清理。存储在实例变量和 属性中的对象会自动释放;你不需要明确地释放它们 。
我一直在教我发布实例变量和属性,我拥有在我的视图控制器的dealloc方法。
我意识到的唯一例外是使用ARC时,但在本文档中没有提到ARC。
这是正确的吗?
由于您发布的指南最近已更新,我很确定它假设您使用ARC(毕竟,如果可能,您应该这样做)。
你是对的,在ARC之前,你必须在dealloc
方法中发布你的实例变量(你可以在App-Delegate的dealloc
中看到旧的XCode模板)。使用ARC时,会自动处理(如本指南所述),所以除特殊需求外,dealloc
方法不再使用。
正如JiaYow提到的,该指南已更新至ARC。在这里,您可以找到视图控制器的传统指南:https://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/ViewControllerPGforiOSLegacy/BasicViewControllers/BasicViewControllers.html#//apple_ref/doc/uid/TP40011381-CH101-SW1
不错,谢谢。 – Camsoft 2012-03-02 13:49:01
思想很多,但文档不清楚。我正在使用ARC引入之前构建的代码。 – Camsoft 2012-03-02 13:41:41