我有这个片段:
1: if ((s >= kEnumValue1) && (s <= kEnumValue2)) {
2: MyObject * o = [self findObjectFor:s];
3: if ([o isValidFor:self]) {
4: [arrayOfMyObjects removeObject:o];
5: for (MyObject * mo in arrayOfMyObjects) {
6: ...
7: }
8: }
9: }
出于某些非常奇怪的原因,当我的代码到达第4行时,如果我跨步,它将回到同一线程上方法的开始,而无需经过第5行。有人知道为什么会发生这种情况吗?
NSMutableArray上的removeObject没有提到任何异常。
最佳答案
可以肯定地说,您没有在removeObject:
中找到错误(除非您自己编写了错误)。
您检查了arrayOfMyObjects
吗?非零吗?是否包含任何内容?