如果我们尝试使用从nsarray ar nsmutablearray中删除的对象会发生什么?

时间:2011-09-07 06:50:55

标签: iphone

我搜索过很多次,但大部分时间都发现了与释放对象无关的删除对象的答案。任何帮助都将受到高度赞赏。

2 个答案:

答案 0 :(得分:0)

你是什么意思“从数组中删除”?如果您将对象分配给任何其他变量 - 什么都不会发生。 (只是内部保留计数会减少一个 - 但这是内部的) 但是,如果该对象未分配给任何其他变量,则系统迟早会声明该对象占用的内存。没有人知道这种情况何时发生。这就是为什么在这种情况下将对象从数组中删除后,对象是未定义的。

答案 1 :(得分:0)

您无法从NSArray中删除对象,因为它是不可变的。从NSMutableArray中删除对象(参见docs)非常简单:

[myMutableArray removeObject: anObject];