我开始学习iPhone编程,这显然应该是一个非常简单的问题。我在xcode 3.1.4中工作。现在,当我创建一个基于窗口的应用程序的新项目并修改dealloc(在AppDelegate.m文件中),以便它实际上在控制台上生成一条print语句时,我实际上看不到该语句。所以,我的问题是为什么?

为了避免出现明显的答案,修改后的dealloc为:

- (void)dealloc {
    NSLog(@"Dealloc is called");
    [window release];
    [super dealloc];
}

这很奇怪吗?

最初我曾发布过类似的问题here,但现在我知道真正的问题是我在此处描述的问题。主持人,请随时删除我的其他主题。我很抱歉。

最佳答案

在应用程序结束之前,不会释放appDelegate,这时在控制台上看到消息已为时已晚。

另外,对于任何新项目,无论如何都应使用ARC,这在很多情况下都无需调用dealloc。

关于iphone - 为什么未在全新项目(xcode 3.1.4)上调用dealloc?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10346636/

10-12 01:02