在开始开发 iOS 应用程序时,我一直在使用 XCode 3.2.4,但现在我转向使用 iOS 4.3 SDK 的 XCode 4.1。我注意到,当我像在 XCode 3 中那样从 XCode 模板创建UIViewController类时,现在dealloc方法不会自动添加。通过 Internet 搜索让我发现,如果我使用 ARC(自动引用计数)创建项目可能会发生这种情况,但我知道这一点功能仅在 XCode 4.2 中实现。
我应该手动添加dealloc方法吗?
在开始开发 iOS 应用程序时,我一直在使用 XCode 3.2.4,但现在我转向使用 iOS 4.3 SDK 的 XCode 4.1。我注意到,当我像在 XCode 3 中那样从 XCode 模板创建UIViewController类时,现在dealloc方法不会自动添加。通过 Internet 搜索让我发现,如果我使用 ARC(自动引用计数)创建项目可能会发生这种情况,但我知道这一点功能仅在 XCode 4.2 中实现。
我应该手动添加dealloc方法吗?
你可以继续添加dealloc。如果确实启用了 ARC,您会收到编译器的抱怨。
即使在使用 ARC 时,如果除了释放对象之外还需要做其他事情(例如,取消注册的观察者),有时仍然需要 dealloc。
不使用 ARC 时,是的……dealloc
像往常一样使用该方法。
如果启用了 ARC,则在显式使用dealloc
. 还要检查您的项目的构建设置,以获得额外的安全性。您可以在 Xcode 4.1 中使用使用 Xcode 4.2 创建的项目。
在这种情况下,ARC 设置将位于底部,而不是通常的位置,因为它不应该被 Xcode 4.1 识别。