Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 目标C NSArray Vs NSMutableArray性能_Objective C_Arrays_Nsmutablearray_Nsarray - Fatal编程技术网

Objective c 目标C NSArray Vs NSMutableArray性能

Objective c 目标C NSArray Vs NSMutableArray性能,objective-c,arrays,nsmutablearray,nsarray,Objective C,Arrays,Nsmutablearray,Nsarray,使用NSMutableArray我们可以获得其他方法,如 addObject insertObject removeObjectAtIndex 当我们在NSMutableArray中获得其他方法时,为什么要使用非可变NSArray?在使用NSMutableArray而不是NSArray时,是否有任何性能损失?请检查以下内容: 上面的链接提到了它,用我的话来说就是: 调用要复制阵列的API时,如果 发送-复制到一个不可变数组(NSArray),它只会影响保留 计数,但在将-copy发送到可变数

使用
NSMutableArray
我们可以获得其他方法,如

  • addObject
  • insertObject
  • removeObjectAtIndex
当我们在
NSMutableArray
中获得其他方法时,为什么要使用非可变
NSArray
?在使用
NSMutableArray
而不是
NSArray
时,是否有任何性能损失?

请检查以下内容:

上面的链接提到了它,用我的话来说就是:

调用要复制阵列的API时,如果 发送-复制到一个不可变数组(NSArray),它只会影响保留 计数,但在将-copy发送到可变数组(NSMutableArray)时 分配堆内存。因此,增加保留计数比 分配堆内存

性能问题来了


记忆是一个很好的理由。阻止任何修改的尝试也是一个好方法。为什么要使用可变数组来存储字母表中的字母?或者类似的?