gdb如何打印stl容器

时间:2018-03-17 23:55:12

标签: c++ stl gdb

GDB如何打印这个容器?<​​/ p>

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

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

1 个答案:

答案 0 :(得分:0)

  

GDB如何打印这个容器?<​​/ p>

使用pretty-printers

libstdc++ std::vectorstd::unordred_map等的漂亮打印机为part of,随libstdc++一起提供。

  

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

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