如何解决如何让 LLDB 能够打印 STL 容器的内容?
我现在可以让我的 LLDB 调试器打印矢量内容,但是 unordered_map 内容的输出远不能令人满意。输出不包含任何键和值。
有没有办法支持 LLDB 调试器来做到这一点?
解决方法
看起来您正在使用 STL 的 libcpp 版本(来自 gcc 的版本)? libcpp 的 lldb 数据格式化程序覆盖范围不如 libcxx(clang 的 STL 实现)数据格式化程序完整。有一个 libcpp 映射的格式化程序,但没有 unordered_map。
您可以在 http://bugs.llvm.org 提交 ER 请求添加支持,或者尝试自己添加支持。或者您可以在 Python 中为它制作一个格式化程序供您自己使用。此处描述了该过程(整个页面描述了 lldb 中变量格式化的工作方式,然后是在 Python 中执行此操作的部分):
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。