Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.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
Ios 复制时保留计数_Ios_Memory Management_Copy_Retaincount - Fatal编程技术网

Ios 复制时保留计数

Ios 复制时保留计数,ios,memory-management,copy,retaincount,Ios,Memory Management,Copy,Retaincount,我对内存管理一无所知。我知道我的问题已经在StackOverflow上讨论过了。但我想知道答案,以便完全理解它。我的问题是: NSMutableArray *firstArray = [[NSMutableArray alloc]init]; NSMutableArray *secondArray = [[NSMutableArray alloc] init]; secondArray = [firstArray copy]; 复制后第一个阵列和第二个阵列的保留计数是多少?1firstArra

我对内存管理一无所知。我知道我的问题已经在StackOverflow上讨论过了。但我想知道答案,以便完全理解它。我的问题是:

NSMutableArray *firstArray = [[NSMutableArray alloc]init];
NSMutableArray *secondArray = [[NSMutableArray alloc] init];
secondArray = [firstArray copy];

复制后第一个阵列和第二个阵列的保留计数是多少?

1
firstArray
持有指向
firstArray
的指针。调用
secondArray=[firstArray copy]
,则将
firstArray
的内容复制到新的内存位置,
secondArray
将指向该位置。这意味着
firstArray
secondArray
将指向不同的内存位置(并且是不同的对象),尽管它们具有相同的数据。因此,它们各自的保留计数为1。

,不要忘记提到原始
secondArray
的保留计数将为0,并且将被释放。