Iphone 当我有一个NSMutableArray时,我还必须释放所有对象吗?
当我有一个带有一些自定义类对象的NSMutableArray时,声明Iphone 当我有一个NSMutableArray时,我还必须释放所有对象吗?,iphone,objective-c,ios,Iphone,Objective C,Ios,当我有一个带有一些自定义类对象的NSMutableArray时,声明 NSMutableArray *list = [NSMutableArray new]; 还必须释放*列表中的所有对象吗?将对象引用放入NSMutableArray将使该对象的保留计数增加,因为数组保留所有对象。 当向数组发送release消息时,它还会向其引用的所有对象发送相同的消息 因此,如果您没有在数组上保留它们,您不应该再做任何事情。将对象引用放入NSMutableArray将使该对象的保留计数增加,因为数组保留所有
NSMutableArray *list = [NSMutableArray new];
还必须释放*列表中的所有对象吗?将对象引用放入
NSMutableArray
将使该对象的保留计数增加,因为数组保留所有对象。
当向数组发送release
消息时,它还会向其引用的所有对象发送相同的消息
因此,如果您没有在数组上保留它们,您不应该再做任何事情。将对象引用放入
NSMutableArray
将使该对象的保留计数增加,因为数组保留所有对象。
当向数组发送release
消息时,它还会向其引用的所有对象发送相同的消息
因此,如果您没有在阵列上保留它们,您不应该再做任何事情。不,当释放阵列时,阵列中的所有对象都会发送一条释放消息。因此,当释放或排空自动释放池时,列表中的所有对象都将在这种情况下释放。否,当释放数组时,数组中的所有对象都会发送一条释放消息。因此,当释放或清空自动释放池时,列表中的所有对象在这种情况下都将被释放。如果在
NSMutableArray
中添加一个对象,它将对该对象调用retain
。当您释放数组时,它将调用它拥有的所有对象上的release,因为它在您添加时先前调用了对象上的retain
因此,您不需要在每个对象上显式调用release
,在array实例上调用一个release
就足够了
要了解您必须遵守的内存管理基本规则,请阅读“” 如果您在
NSMutableArray
中添加了一个对象,它将对该对象调用retain
。当您释放数组时,它将调用它拥有的所有对象上的release,因为它在您添加时先前调用了对象上的retain
因此,您不需要在每个对象上显式调用release
,在array实例上调用一个release
就足够了
要了解您必须遵守的内存管理基本规则,请阅读“”