我在调用NSMutableArray上的removeObjectAtIndex时发生异常,并且说myLocationsArray被声明为不可变,从而导致应用程序抛出异常。该阵列上的所有其他操作都很好,最明确的声明是正确的,等等,但在我的应用程序中,它被设置为不可变的。在removeObjectAtIndex呼叫前右将NSMutableArray重新初始化为NSMutableArray
myLocationsArray = [[NSMutableArray alloc] initWithArray:[defaults
objectForKey:MYLOCATIONSARRAY_KEY]];
:调查的试图找到在哪里获得设置不变一段时间后,我决定拧紧,只是重新声明变量本身。
但是我知道这是坏的,我在相同的变量上调用alloc/init两次。但它是唯一有效的工作。有没有什么办法提醒这个变量,它是一个NSMutableArray,而不像我这样引入内存泄漏?
您需要显示一些代码,与阵列涉及并可能导致这一点,否则任何人都很难提供适当的建议。 – 2012-04-27 16:07:49