【问题标题】:How does gdb print stl containersgdb如何打印stl容器
【发布时间】:2018-03-17 23:55:12
【问题描述】:

GDB 如何漂亮地打印这个容器?

const unordered_map<string, int> map{{"hello", 1}, {"world", 2}};
(gdb) p map
$1 = std::unordered_map with 2 elements = {["world"] = 2, ["hello"] = 1}

如何为我的自定义容器获取此功能?

【问题讨论】:

  • 查找“gdb 漂亮打印机”
  • 好的,我看到漂亮的打印机位于 stl objfile libstdc++.so.6

标签: c++ stl gdb


【解决方案1】:

GDB 如何漂亮地打印这个容器?

通过使用pretty-printers。

libstdc++std::vector、std::unordred_map 等的漂亮打印机是part of 并附带libstdc++。

我看到漂亮的打印机位于 stl objfile 中

不,他们不是。指向它们的文件名在目标文件中,而不是漂亮打印机本身。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-21
    • 1970-01-01
    • 2016-03-07
    • 1970-01-01
    • 2021-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多