-1

我有很多名为_Obj_1,_Obj_2等的对象...
我想全部释放。

我正在使用 KVC。特别是要释放所有,我使用:

MyClass *obj = nil;
for ( int i=1 ; i<=14; i++ ) {
  obj = [self valueForKeyPath:[NSString stringWithFormat:@"_Obj_%d", i]];
  [obj release];
}

铿锵分析仪告诉我[obj release];

调用者此时不拥有的对象的引用计数不正确递减?

我该如何解决?

这不是 ARC 项目。

4

1 回答 1

2

这可以很容易地修复

如果您不拥有该对象(您没有调用保留),请不要释放它!

与其使用大量同名变量,不如使用数组来保存对象。那么释放将只是一个数组的释放。

于 2012-12-14T14:34:27.173 回答