我正在使用xcode4和box2d / cocos2d。
我遇到了一些奇怪的困难,即随机弹出的运行时错误' 我认为当我在重建/跑步之前不停止这个过程时,它们会发生更多 通常如果我在重建/运行错误之前停止该过程不会发生。
有时我会得到:
' NSInvalidArguementException',原因 ' - [ConstructLayer createCog :::]: 无法识别的选择器发送到实例 0x554ecd0。
有时我在名为
的文件中收到一个奇怪的错误LLVM:InstCombiner :: DoOneIteration(LLVM ::功能及安培;, 无符号 INT)_disassembly_0x026bc64f.nasm
突出显示该行:
0x02bc64f< + 0439> mov 0x20(%eax),%ecxn
有时我得到一个错误:对象0x68d4ba4的malloc * 错误:释放对象的错误校验和 - 对象可能在被释放后被修改。
这是我的dealloc方法:
- (void) dealloc{
delete world;
world = NULL;
body_block1 = NULL;
body_egg = NULL;
body_poly = NULL;
[_block1 release];
[_egg release];
[_poly release];
[super dealloc];
}
究竟发生了什么?通常错误会在重新开始运行之前连续发生3次并出现不同的错误
救命啊!
谢谢,
奥利弗。
答案 0 :(得分:1)
尝试在释放后使数组为零。
[_block1 release];
_block = nil;
[_egg release];
_egg = nil;
[_poly release];
_poly = nil;