在Instrument-Leaks中,以下代码总是在我推动PhotosObj时增加分配内存,而释放PhotosObj不起作用。

if (PhotosObj) {
    [PhotosObj release];
    PhotosObj=nil;
    PhotosObj=[[Photos alloc]initWithNibName:@"Photos" bundle:nil];
}
else {
    PhotosObj=[[Photos alloc]initWithNibName:@"Photos" bundle:nil];
}
[self.navigationController pushViewController:PhotosObj animated:YES];


请澄清一下。

提前致谢

最佳答案

PhotosObj是什么样的变量?局部变量,全局变量或实例变量?
我建议将其设置为局部变量(变量名应以小写字母开头),如下所示:

Photos *photosObj = [[Photos alloc] initWithNibName:@"Photos" bundle:nil];
[self.navigationController pushViewController:photosObj animated:YES];
[photosObj release];

关于ios - 推 View Controller 中的内存泄漏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8427684/

10-13 05:26