Iphone KVC使用valueForKeyPath发布objs?

Iphone KVC使用valueForKeyPath发布objs?,iphone,objective-c,ios,key-value-coding,kvc,Iphone,Objective C,Ios,Key Value Coding,Kvc,我有很多对象,叫做_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释放] 不正确的对象引用计数递减率不是 在这一点上属于来

我有很多对象,叫做_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释放]

不正确的对象引用计数递减率不是 在这一点上属于来电者

我怎样才能修好它


这不是ARC项目。

这很容易修复

如果您不拥有未调用retain的对象,请不要释放它


使用数组保存对象,而不是使用许多同名变量。那么释放将只是一个数组的释放。

为什么要用这个来释放那个可怜的对象?这确实是一个黑客反模式。好吧,谢谢。现在,有了评论/回应/反对票,我知道用kvc发布obj是一种愚蠢的方式。谢谢,我同意。克朗的警告在这里是正确的。这是一种非常危险的valueForKeyPath用法:。