2017-04-01 31 views
1

当我调试一个C++应用程序,我无法看到的变量
值。如果你看到下面,VS2015调试器不扩大变量

std::string s = "a"; 

调试器只显示该值作为{.. 。},即使我扩展了该值。

我已经试过

  • 删除符号缓存,(工具>选项...>调试>符号。
  • 未选中 “使用管理的兼容模式”
  • 经过“使用管理的兼容模式“
  • 未选中‘使用本机兼容模式’
  • 经过‘使用本机兼容模式’
  • 我曾尝试到E将工作环境中的设置导出,然后将其导入另一台,但没有运气。

有什么建议吗? ...

VS2015 debugger

我得到std::vector<std::string> ...或任何其他类型相同的问题,我不能展开数据。

编辑:新增的它是什么应该看起来像一个图片...

What it should look like

编辑2:我试图将设置从工作环境和出口然后导入到另一个,没有运气。

+0

它的存在对你强调这一行。您需要展开'_Myval2'节点几个级别。 –

+0

是的,但这不是它应该工作的方式。如果你有一个'std :: vector ...',你必须为每个值扩展大约10个级别(作为例子)。调试器通常不会以这种方式工作。 – FFMG

+0

你是怎么得到“应该看起来像”的图片?从发布版本?我猜测CRT的调试版本有一些复杂的功能,可以帮助你捕捉错误,而这正在搞乱调试器可视化器。我不记得我在Visual Studio中看到的视图;我目前没有安装电脑。 –

回答

0

要解决我未安装VS2015完全(包括已安装在过去几个月的所有更新和其他“vs2015”工具的问题。

然后我跑的CCleaner几次以去除死注册表设置比重新运行安装,它拾起更新需要3留下的,(不知道这帮助,但它不会伤害)。

我。

未删除的几件事情因为我不需要重新注册并输入我的凭据。
但它似乎是w因为重新安装的伎俩不是问题。

另外:

  • 未选中 “使用管理的兼容模式”
  • 未选中 “使用本机兼容模式”