0

我有一个 ivar,keys它是一个包含 50 个字符串的 NSMutableArray。当我的视图加载时,我在 Instruments 中收到一个僵尸消息错误,它引导我到这行代码:

for (int row = 0; row < r; row++) {
    for (int column = 0; column < c; column++){
        otherArray[column][row] = [[[keys objectAtIndex:0] retain] autorelease]; 
                                //^ Instruments brings me here
        [keys removeObjectAtIndex:0];
    }
}

我保留了保持它活着的值,这样remove就不会导致崩溃,但它仍然会。我试过不保留和自动释放,但它仍然崩溃。当我有一个局部变量但没有一个 ivar 时,这种保留和自动释放的方法有效...

我需要一个 ivar,因为我需要访问其他地方的字符串。

谢谢

4

2 回答 2

0

合成它并在你的 dealloc 中释放它。

于 2010-09-21T16:12:28.393 回答
0

已解决 - 内存管理问题 - 未正确保留密钥。

于 2010-10-05T10:07:56.807 回答