NSMutableArray的addObject方法究竟如何工作?它是否会创建一个新实例并将其添加到数组中,还是只是将对SAME对象的引用添加到数组中?关于NSMutableArray,指针和版本问题
如果答案是只插入一个参考对象,那么它导致了我的下一个问题:
比方说,我有以下方法(是NSMutableArray的“列表”)我的课之一,很高兴,这个代码工作我想要的方式,但我似乎就是不完全理解为什么:
-(void)buyItem:(Item *)anItem
{
Item * newItem = [[Item alloc]init];
newItem.name = anItem.name;
newItem.details = anItem.details;
[list addObject:newItem];
[newItem release];
}
所以基本上打完电话后[名单ADDOBJECT:的newitem],就现在共有两个参考指向的相同的对象权利(newItem,和'列表'数组中的另一个)?
但是,为什么在这里释放newItem对象,不会清除'list'中的那个NSMutableArray?他们不是指向同一个对象吗?
啊是的,我有点得到它!谢谢你的回答 – lucas32