Iphone 图像内存泄漏

Iphone 图像内存泄漏,iphone,uiimage,memory-leaks,Iphone,Uiimage,Memory Leaks,.h文件 .m文件 在VIEWWILLEXPEND方法中: UIImage *ownImg; @property (nonatomic, retain) UIImage *ownImg; 这是自己的漏洞,有人知道它为什么会泄漏吗 顺便说一句,使用self.ownImg和不使用self有什么不同 谢谢 呼叫 UIImage *myImage2 = [UIImage imageNamed:@"thumbnail.png"]; self.ownImg = myImage2; 只是一个只设置指针

.h文件

.m文件

在VIEWWILLEXPEND方法中:

UIImage *ownImg;

@property (nonatomic, retain) UIImage *ownImg;
这是自己的漏洞,有人知道它为什么会泄漏吗

顺便说一句,使用self.ownImg和不使用self有什么不同

谢谢

呼叫

UIImage *myImage2 = [UIImage imageNamed:@"thumbnail.png"];

self.ownImg = myImage2;
只是一个只设置指针的赋值。但是打电话

ownImg = myImage2;
将调用包含retain的@synthesized setter。(我假设您拥有自己的@synthesis()


因为您使用的是保留的setter方法,所以必须在某个地方释放它。尝试将其放在unload方法的覆盖中,或者如果非nib类将其放在dealloc中。

I不需要。在viewDidUnload中,我写入self.ownImg=nil;在dealloc[ownImg release]中;可能是因为我在VIEW中指定的值将出现导致内存泄漏?所以我应该检查self.ownImg!=nil,然后在重新分配之前释放它?谢谢。只要使用self.owning=newThing;这将释放旧地址,保留新地址,并设置指向新地址的指针。这些合成方法隐藏了大量代码。
self.ownImg = myImage;