0

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

在.h

@property (nonatomic, retain) NSMutableArray *mutableArray;

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];
}

谢谢!

4

2 回答 2

2

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

所以改成

self.mutableArray = [NSMutableArray array];
于 2012-06-14T03:17:20.973 回答
0

iOS 会自己做内存管理。这是Apple Arc 文档Mikeash Friday Q&A 博客中还有一个关于内存管理的极好简明信息

于 2012-06-14T03:20:02.693 回答