其他分享
首页 > 其他分享> > c – 虚拟方法混乱,我怎样才能找到导致这种情况的原因?

c – 虚拟方法混乱,我怎样才能找到导致这种情况的原因?

作者:互联网

我的一位同事今天遇到了一些C代码的问题.他正在调试对象虚拟方法的怪异行为.每当方法执行时(在调试,Visual Studio 2005下),一切都出错了,调试器不会介入该方法,而是在对象的析构函数中!另外,对象的虚拟表,只列出了它的析构函数,没有其他方法.

我之前没有看到过这种行为,并且打印了运行时错误,说明了ESP寄存器.我希望我能给你正确的错误信息,但我现在不记得了.

无论如何,你们有没有遇到过这样的人?什么可能导致这种行为?怎么解决?我们尝试多次重建项目,重新启动IDE,没有任何帮助.我们还在该方法调用之前使用了_CrtCheckMemory函数来确保内存处于良好状态,并返回true(这意味着确定).我没有更多的想法.你呢?

解决方法:

我之前见过.通常它会发生,因为我在调试模式下使用Release内置的.LIB文件中的类.其他人可能已经看到了一个更好的例子,我会回答他们的答案.

标签:virtual-method,c,debugging,visual-studio-2005
来源: https://codeday.me/bug/20190827/1741959.html