使用 vscode 调试 C++ 程序时, 无法查看 std::vector
或 std::map
的内容,而仅显示 _M_impl
等内部实现细节,可能是因为没有正确启用调试器的 pretty-printing
功能,或者是 libstdc++
调试信息没有正确加载。
解决方法:
在 ~ 目录下创建 .gdbinit (隐藏文件: 点gdbinit ) 文件. 输入以下内容:
/usr/share/gcc/python 是我本地的路径, 请以自己系统中的路径为准.
python
import sys
sys.path.insert(0, '/usr/share/gcc/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers(None)
end