我的程序中出现了一些奇怪的、无法解释的错误和崩溃。我一直在调试并环顾四周,我注意到我正在将一个变量设置为 NULL,但如果我在之后立即设置断点,0xcdcdcd00
即使我只是将其设置为 NULL,该变量也会设置为。
看起来我的程序中发生了某种内存损坏。
找出内存损坏原因的一些好的技术是什么?在这开始发生之前我添加了一大块代码,所以在浏览我的代码时,我应该寻找什么会导致内存损坏?
我有一个名为 的类monster
,它派生自一个名为mob
我执行以下代码:
monster* newMon = new monster();
它调用怪物类的构造函数:
monster::monster() : mob() {
this->renderer = NULL;
}
当我在这个函数结束时中断时,渲染器 =0xcdcdcd00
或者有时0xcdcdcdcd