Objective-c NSMutableArray 释放行为

标签 objective-c

是否释放,递归释放所有内部对象?还是必须手动完成?

我可以这样做吗?

NSMutableArray *list = [[NSArray alloc] init];
// ...
// fill list with elements
//...
[list release];

或者我必须在释放 NSMutableArray 之前将所有内部对象一一释放?//假设除了列表本身之外,没有任何其他对包含对象的引用。

最佳答案

是的。它在添加时保留它们,并在 dealloc 时释放它们。这实际上是我在这里看到的最常见的问题之一。

关于Objective-c NSMutableArray 释放行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4376050/

相关文章:

c++ - NSMutableArray 到 std::vector

iphone - 为什么 NSDate 不能使用 < 或 > 进行比较?

iphone - 当方向改变时更改或禁用 iPhone 旋转动画

objective-c - 通过 Objective C 代码“显示包内容”

iphone - iPhone开发语言

ios - 检查字符串时间范围是否为现在

iphone - 带有两个标题的 UICollectionView

ios - 如何以编程方式区分 iOS 中的公共(public) API 与未记录/私有(private) API?

objective-c - 枚举数组 - 转换为 NSArray

objective-c - 如何在 BlockCode 中捕获异常( Objective-C )