IOS:如何使用NSMutableArray
在我的代码中,我必须在另一个数组中存储一个数组: 最好的办法是什么 第一:IOS:如何使用NSMutableArray,ios,xcode,nsmutablearray,Ios,Xcode,Nsmutablearray,在我的代码中,我必须在另一个数组中存储一个数组: 最好的办法是什么 第一: NSArray *arrayTemp = myArray; 第二: NSMutableArray *arrayTemp = [[NSMutableArray alloc]init]; [arrayTemp addObjectsFromArray:myArray]; ...instruction.... [arrayTemp release]; 通过执行arrayTemp=myArray,可以将arrayTemp声明
NSArray *arrayTemp = myArray;
第二:
NSMutableArray *arrayTemp = [[NSMutableArray alloc]init];
[arrayTemp addObjectsFromArray:myArray];
...instruction....
[arrayTemp release];
通过执行
arrayTemp=myArray
,可以将arrayTemp
声明为指向现有数组myArray
的新指针。这不是副本(如果在myArray[42]中放入X,arrayTemp[42]也将是X)
第二个变量看起来像是在复制数组,但当您似乎需要“按值”复制时,数组的值仍然是通过引用(按指针)复制的
您应该尝试的只是:
NSArray *arrayCopy = [myArray copy];
注意:从内存管理的角度来看,这相当于retain
或alloc/init
:使用后应释放arrayCopy