有什么区别:
[[NSMutableArray alloc] init]
和
[NSMutableArray array]
答案 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]。