Bor*_*ris 3 c++ debugging windbg visual-c++
我们从客户站点收到了故障转储.我看到其中一个结构是_stvptr是NUL.
它总是指向有问题的条件(记忆超限,删除对象两次......)或者是否存在此指针可以为空的情况.
您可能在堆栈上看到部分被破坏的对象.编译器可以通过清除虚函数表指针将对象的一部分标记为已销毁,这样它就可以正确实现具有"菱形"继承的类的析构函数(具有公共虚基类的类的多重继承)如果程序崩溃在破坏对象期间,您将看到转储中的部分破坏对象.
较旧的MSVC编译器没有为具有钻石继承的类正确实现析构函数.每当你试图销毁一个,程序就会崩溃.我不确定是否仍然如此.
| 归档时间: |
|
| 查看次数: |
3905 次 |
| 最近记录: |