用于处理NSMutableArray保留属性的适当内存管理

时间:2012-06-14 03:10:56

标签: ios memory-management properties

我想知道我是否正确管理数组的内存。下面我将这个数组与tableView一起使用,所以我想在ViewController的生命周期中保留它。因为我创建它作为属性我对保留计数以及如何处理它有点困惑,因为我在代码中分配它。以下是我目前编码的方式。

in .h

@property (nonatomic, retain) NSMutableArray *mutableArray;

in .m

self.mutableArray = [NSMutableArray alloc] init];

//fill with object I'm going to be using throughout the life of the viewController

- (void) dealloc {
   [mutableArray release];
   [super dealloc];
}

谢谢!

2 个答案:

答案 0 :(得分:2)

如果您这样做,您将泄漏数组。因为您的属性设置为保留,self.mutableArray = [[NSMutableArray alloc] init];mutableArray = [[[NSMutableArray alloc] init] retain];相同。

所以将其改为

self.mutableArray = [NSMutableArray array];

答案 1 :(得分:0)

iOS将自行进行内存管理。这是Apple Arc Documentation。从Mikeash Friday Q&A blog

还有关于内存管理的精简简明信息