2010-08-16 111 views
1

我正在为iphone上的应用程序objective-c 我有数组与对象引用 如果我从数组中删除对象引用的项目,我应该另外释放此对象,否则它会自动从内存中删除?从数组中删除对象

回答

2

从数组对象中删除时被释放一次。因此,如果您的保留/版本在其他地方正确配对,则在这种情况下不得释放您的对象。

0

如果NSArray(UM,它一个NSArray,是不是C数组提供无所有权管理?)是拥有该对象的唯一的事情 - 那就是,如果对象增加被收购autorelease - d或在添加后明确呼叫release - 然后在清除时自动清除它。正常情况下,其他所有权声明仍然需要为release -d。

0

事实上,你谈论NSMutableArray

而且它释放“自动”。 所以做

[array add: @"SAFEY-STRING" ]; 

,不要做

[array add: [[NSString alloc] initWithFormat:@"LEAKY-STRING"] ];