在main.m中发现内存泄漏

时间:2012-03-28 06:52:19

标签: iphone

以下是我的main.m

#import <UIKit/UIKit.h>

int main(int argc, char *argv[]) {

    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, nil, nil);
    [pool release];
    return retVal;
}

在该行发现的内存泄漏

 int retVal = UIApplicationMain(argc, argv, nil, nil);

如何调试?

2 个答案:

答案 0 :(得分:0)

如果您使用的是xcode 4.0或更新版本,那么大部分时间都会出现错误,因此请继续使用乐器或观看应用程序,此时它会崩溃,然后在此处放置断点,看看会出现什么问题。

并尝试从产品菜单中分析,它会给您带来内存泄漏错误。

答案 1 :(得分:0)

C / C ++或Objective-C中的1号规则如果已分配内存,则必须自行释放。它不是Java或.NET,它自动完成内存管理。

请阅读:Objective-c Memory Management For Lazy People

或者您可以使用自动释放:

[[[NSImage alloc] initWithContentsOfFile:@"/tmp/youownthis.jpg"] autorelease];