我是初学者,我在Xcode上运行'Analyze'后发现了这个警告:
IphoneFeatureImageDetailViewController *img = [[IphoneFeatureImageDetailViewController alloc] initWithNibName:@"IphoneFeatureImageDetailViewController" bundle:nil];
img.imagesArray = [heroArray copy];
img.index = imgButton.tag; // AT THIS LINE IT SAYS POTENTIAL MEMORY LEAK
[self.navigationController pushViewController:img animated:YES];
[img release];
请指出我正确的方向!
答案 0 :(得分:8)
Analyze命令经常在问题之后标记行,因为这是代码中知道泄漏发生的点。在您的情况下,它可能是它报告的imagesArray
。如果那是retain
属性,则copy
将保留一个,而分配将保留另一个,这超出了需要。
我怀疑......
img.imagesArray = [[heroArray copy] autorelease];
......将清除它。或者你可以切换到ARC,整个问题就会消失。 :)