iphone的NSmutable内存问题

时间:2010-07-20 03:48:36

标签: iphone

我正在使用这个a1 = [[NSMutableArray alloc] init];现在应该是发布a1

的最佳方式

现在我发布dealloc()

我在viewdidload()中分配a1并在那里显示10张图片

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

一个基本的例子是:

// get the party started
NSMutableArray *tmpArray = [[NSMutableArray alloc] init];
// as an example, just copy some user defaults into the mutable array
tmpArray = [[userDefaults objectForKey:@"UserDefaultsExample"] mutableCopy];

// do something here with tmpArray (i.e. if ([tmpArray count] == 0) //do something)

// once you are done with tmpArray, go ahead and release it
[tmpArray release];

对于你的情况,你想要在完成它后释放阵列(即在viewDidLoad结束时,只要你真正完成它就可能是一个安全的赌注)。如果你这样做,你不需要在你的.h文件中创建一个NSMutableArray对象,合成它并在dealloc中释放。相反,你只是像我上面那样创建一个临时的,并在你完成显示图像时释放它。