Visual Studio Debugger显示本机类型的错误值

时间:2013-04-27 09:45:24

标签: c++ visual-studio debugging native

我正在使用Visual Studio 2008(版本9.0.30729.1 SP)和.NET 3.5编写托管C ++和本机C ++的程序。
在调试时,Visual Studio显示错误的值类型,如size_t和本机指针。 使用消息框,我可以验证实际值是否正确 有没有办法解决这个问题?

这是一个截图,以澄清我的意思:

Visual Studio displaying wrong values for native types

3 个答案:

答案 0 :(得分:2)

似乎将Common Language Runtime Support下的Configuration PropertiesPure MSIL Common Language Runtime Support (/clr:pure)切换为Common Language Runtime Support ( /clr)就可以了。我现在可以很好地查看原生对象。

答案 1 :(得分:0)

尝试安装KB957912(Visual Studio 2008 SP1调试和断点的更新),它可能会对您有所帮助。

答案 2 :(得分:0)

我不知道g_pGame的类型是什么,但是可以为Visual Studio编写扩展,以便您可以查看自定义类型的值。虽然该功能主要针对其他用途,例如您拥有自己的String容器,并且您知道它的内部详细信息,并且您只想查看其中的字符串值。所以通常不是为了解决不良行为。此外,编写此类扩展需要付出努力,并且它不会对其他类型的问题有所帮助。但我想告诉你。