QT Creator中无法访问本地和表达式中的变量

时间:2013-12-16 11:46:15

标签: c++ debugging qt-creator

如果我尝试在QT Creator中调试我的C ++程序,则Locals and Expressions窗口会显示程序中的变量。但是,所有值都显示“< not accessible>”。

截图:

enter image description here

如何显示要显示的值?我可以用cout打印出值,所以我知道它们已经初始化了。

编辑:似乎它只适用于字符串

规格/其他:

  • Windows 8,64位
  • QT 5.2.0
  • MinGW 32bit,我认为4.8
  • QT Creator 3.0.0

2 个答案:

答案 0 :(得分:11)

尝试删除工具/选项/调试器/ GDB /加载系统GDB漂亮打印机上的复选标记,看看这是否有所不同。

答案 1 :(得分:7)

解决:

  

对于复合类型(std :: string和其他类),它不会   自动转换为某种默认类型(例如std :: string to   的char *);所以你需要做什么右键单击一个值,然后选择   子菜单更改本地显示格式 - >原始结构,然后保持   打开符号,直到你得到有意义的东西(如果可能的话)。   例如。对于std :: string,在更改为“Raw structure”之后,就得到了   您的实际字符串(通过单击您左侧的“+”符号)   符号):_M_dataplus-> _M_p

     

请注意,您可以为一个符号“更改本地显示格式”(   您选择的一个)或该类型的所有符号(例如,您选择一个   std :: string,然后所有std :: strings都改为Raw结构)

从此链接:http://qt-project.org/forums/viewthread/36121/

归功于Gyll。