我正在使用objective-c上的iphone应用程序 我有对象引用的数组 如果我从数组中删除带有对象引用的项目,我是否应该另外释放该对象,否则它将自动从内存中删除?
答案 0 :(得分:2)
从数组对象中删除时会释放一次。因此,如果您的保留/释放在其他地方正确配对,则在这种情况下您不得释放您的对象。
答案 1 :(得分:0)
如果NSArray
(嗯, 是NSArray
,不是吗?C数组不提供所有权管理)是唯一拥有该对象的东西 - - 也就是说,如果添加的对象是autorelease
- d,或者您在添加后明确调用release
,那么它将在删除时自动清除。任何其他所有权声明仍然需要release
- d正常。
答案 2 :(得分:0)
事实上,你在谈论NSMutableArray
它会“自动”发布。
[array add: @"SAFEY-STRING" ];
并且不要
[array add: [[NSString alloc] initWithFormat:@"LEAKY-STRING"] ];