我在一个 DLL 中有一个类,该类在许多其他 DLL 和 EXE 中使用。它有几个在其他二进制文件中包含的包含文件中定义的方法(即方法主体在 .h 文件中)。其中之一让我感到不适: int GetVersion() { return nVersion; }
。
它总是返回-842150451
,但是当我在调试器中运行并查看类成员变量时,nVersion
是100
。
关于如何调试这个问题有什么想法吗?我真的卡住了。
(注意:十年来一直很好用!但是现在我们把我们的代码从VC6.0迁移到VS2005,一直不太顺利...)
最佳答案
十六进制值看起来像 0xCDCDCDCD,它通常是调试版本中未初始化的内存。您确定 nVersion 已初始化吗?
关于c++ - VC++头文件中定义的方法的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1581441/