NSMutableArray alloc init vs NSMutableArray数组

时间:2011-12-19 04:45:34

标签: iphone ios nsmutablearray

有什么区别:

[[NSMutableArray alloc] init]

[NSMutableArray array]

4 个答案:

答案 0 :(得分:11)

[NSMutableArray array]中,您不必释放array,它将自动释放。 &安培;如果您要撰写[NSMutableArray alloc] init],则必须发布array,因此[[NSMutableArray array]将等同于[[[NSArray alloc] init] autorelease];

答案 1 :(得分:1)

第一个保留在内存中直到你释放它,第二个一直持续到运行循环迭代结束。

答案 2 :(得分:1)

NSMutableArray无需释放内存,[NSMutableArray alloc] init]你必须释放它。

答案 3 :(得分:0)

当ARC工作时,你必须释放来自方法的对象,包括init,alloc,new,copy和mutableCopy,如[NSMutableArray alloc] init]。如果没有,对象将被注册到autoreleasepool,如[NSMutableArray array]。