我应该在dealloc中释放实例变量和属性吗



根据苹果关于视图控制器生命周期的文档,我注意到以下关于解除锁定方法的内容:

重写此方法仅用于在最后一刻对视图控制器类。存储在实例变量和属性自动释放;你不需要释放它们明确地

我一直被教导对我在视图控制器的dealloc方法中拥有的实例变量和属性调用release。

我知道的唯一例外是在使用ARC时,但在本文档中没有提及ARC。

这是正确的吗?

由于您发布的指南是最近更新的,我敢肯定它假设您正在使用ARC(毕竟,如果可能的话,您应该这样做)。

你是对的,在ARC之前,你必须在dealloc方法中释放实例变量(你可以在App Delegate的dealloc中的旧XCode模板中看到这一点)。有了ARC,这将自动处理(正如本指南所说),因此除了特殊需要外,不再使用dealloc方法。

正如JiaYow提到的,该指南已更新为ARC。在这里,您可以找到视图控制器的Legacy指南:https://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/ViewControllerPGforiOSLegacy/BasicViewControllers/BasicViewControllers.html#//apple_ref/doc/uid/TP40011381-CH101-SW1

最新更新