IOS ARC NSMutableArray 我需要在为其分配新内存之前删除所有对象吗

标签 ios memory nsmutablearray automatic-ref-counting

NSMutableArray * arrayTest;

-(void) setContent
{
  //must I call [array removeAllObjects]; ? 
  arrayTest = [[NSMutableArray alloc] init]

  [arrayTest addObject:@"str"];
  ...//add many objects
}

我在不同的代码片段中调用这个函数。我是否需要先删除 arrayTest 的所有对象,然后每次都为 arrayTest 分配内存?我使用 ARC 。 我不希望每次调用此函数时我的应用程序内存都会增加。

最佳答案

不,你有的很好。您不需要在 ARC 或非 ARC 下调用 removeAllObjects

当旧数组被释放时,它将负责释放旧数组中的所有对象。

关于IOS ARC NSMutableArray 我需要在为其分配新内存之前删除所有对象吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13476920/

相关文章:

ios - 数组包含对象问题

objective-c - iOS 中的 c 结构实现

ios - Xamarin iOS 应用程序无法提交到 TestFlight 错误 ITMS-90700

c++ - C++非指针数据成员在指针类实例中的分配是在堆上还是在栈上

database - Cassandra 与 ScyllaDB 的内存使用情况

c++ - 在 for 循环中创建的对象具有相同的地址

ios - NativeScript 和带有 XIB 的 iOS 动态框架

ios - 在 iOS 中对 blurView 应用蒙版

ios - 无法从我的 for 循环中向 NSmutableArray 添加超过 260 个元素的元素

xcode - NSMutableArray 与核心数据一起存储 = WORKS,但在更改数组后不起作用