我试图调试我的小型词法分析器并遇到了这个问题:QtCreator-Debugger 不显示我的 std::string-variable 的任何内容。我尝试在控制台中对其进行调试,得到了相同的结果,只是简单的结构信息。
我几天前使用的QtCreator版本确实显示了字符串的内容。所有其他 STL 元素(如 std::vector、std::map、std::multimap 等)都显示正确的数据,只是 std::string 类不正确。
经过几个小时的谷歌搜索,我发现了很多描述漂亮打印机创建的网页,但我解决这个问题的非常愚蠢的方法并没有帮助。有什么想法可以摆脱这个错误吗?
注意:字符串变量的“内容”将始终显示为“不可访问”。我将 QtCreator 2.6 (QT5) 用于 64 位 Linux 操作系统。
编辑(1):我重新安装了从操作系统到编译器和 IDE 的所有东西......奇怪的是,当我使用优化级别 3(-O3)构建我的项目时,QT 可以显示 std::strings。
命令行如下:clang++ -std=c++11 -O3 -g -c foo.cpp
当我删除 -O3 时,std::strings <不可访问>。有任何想法吗?