Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.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 对象泄漏:我如何解决这个问题?_Objective C - Fatal编程技术网

Objective c 对象泄漏:我如何解决这个问题?

Objective c 对象泄漏:我如何解决这个问题?,objective-c,Objective C,将NSMutableDictionary对象复制到NSMutableArray对象时,如下所示: [array addObject:[dictionary copy]]; 然后我得到了一个内存泄漏:方法返回一个objective-C对象,其保留计数为+1。这两个addObject:和copy都增加了保留计数 尝试[array addObject:[[dictionary copy]autorelease]addObject:和copy增加保留计数 请尝试[array addObject:[[d

将NSMutableDictionary对象复制到NSMutableArray对象时,如下所示:

[array addObject:[dictionary copy]];

然后我得到了一个内存泄漏:方法返回一个objective-C对象,其保留计数为+1。

这两个
addObject:
copy
都增加了保留计数


尝试
[array addObject:[[dictionary copy]autorelease]

addObject:
copy
增加保留计数


请尝试
[array addObject:[[dictionary copy]autorelease]]

如果要避免自动删除,也可以尝试以下操作:

NSMutableDictionary temp = [dictionary copy];
[array addObject:temp];
[temp release];

如果要避免自动释放,也可以尝试以下操作:

NSMutableDictionary temp = [dictionary copy];
[array addObject:temp];
[temp release];