Visual Studio 2010 C++ 调试器 -- 无法查看数据

Visual Studio 2010 C++ debugger -- cannot see data

提问人:PentiumPro200 提问时间:4/8/2017 最后编辑:PentiumPro200 更新时间:4/8/2017 访问量:94

问:

有时在 Visual Studio 2010 (C++) 的调试模式下使用数据查看器时,我看不到数据。我可以看到许多其他变量的数据,但看不到下面显示的数据。下面的元素是一个数组。如何摆脱“(错误)”消息并查看数据?

enter image description here

更新:我编写了一个名为“view”的成员函数。如果我跳转到函数调用,调试器工作正常,我可以看到所有类变量。因此,这可能是调试器遵循指针的问题。

enter image description here

C++ Visual-Studio-2010 调试

评论

0赞 Jesper Juhl 4/8/2017
您使用的是 Microsoft 产品。你有没有考虑过;1) 阅读产品文档?2) 联系 Microsoft 寻求支持?这并不是一个C++相关的问题。也;您是否考虑过升级到 VS2017?你可能会得到更好的结果,无论如何,VS2010 的现代 C++ 标准合规性会让野狗肾脏。
0赞 Christopher Pisz 4/8/2017
@Jesper 请指向标题为“当您在调试器中看到(错误)时”的Microsoft页面,这是产品文档的一部分。此外,OP 还使用 Visual Studio 和调试标记了该问题。对我来说似乎是一个合理的问题。
0赞 PentiumPro200 4/8/2017
我在“(错误)”“Visual Studio 2010 调试器”上进行了几次 Google 搜索,但一无所获。上图中白盒的名称是什么?我什至不知道该怎么称呼它?数据查看器框?调试窗口?也许我应该在MSDN论坛上发帖,但我不想经历设置另一个帐户的麻烦。希望这里有人以前见过这个。可能与查看指针有关。我正在开发的产品最迟只支持 VS 2012。
0赞 Christopher Pisz 4/8/2017
请注意,可以将更高版本的 Visual Studio 用于仅支持早期工具集的项目。项目属性中有一个选项,允许您选择“Project->Properties->General->Platform Toolset”(项目-属性-常规-平台工具集) 因此,我可以使用 Visual Studio 2015 为面向 2010 的项目进行开发。
0赞 Christopher Pisz 4/8/2017
@PentiumPro200 如果这是一个蹩脚的问题,请原谅我,但是当您尝试查看变量时,它们是否在范围内?您无法看到超出范围的变量。

答:

0赞 mligor 4/8/2017 #1

您的对象“测试”是标准 STL 类(向量、集合等)之一吗?

如果是,通常您还应该在调试器工具提示中获得大小 - 这看起来像损坏的 autoexp.dat 文件。

如果您在 autoexp.dat 中进行了一些修改,请尝试将其还原并检查是否有帮助。

评论

0赞 PentiumPro200 4/8/2017
它不是一个 STL 类,而是一个供应商支持的专有数组。调试器在 80+% 的时间内都能正常工作。
0赞 mligor 4/8/2017
...存储在里面的物体的类型是什么?“(error)” 显示数组中存储的对象。
0赞 PentiumPro200 4/8/2017
它存储了我定义的结构。