GDB_print_derived_type

GDB print derived type

当我们在使用GDB调试时, print 默认打印多态指针或多态引用的声明类型,如果我们需要查看其实际的派生类类型,方法是:

  1. 首先在GDB命令行输入命令: set print object on
  2. 然后再 print 相关的多态指针或多态引用。

当多态指针是智能指针时,因为智能指针是一个对原始指针包装的类,那么查看其实际的派生类类型的方法是:

  1. 首先在GDB命令行输入命令: set print object on

  2. 有两种方法:

    • 方法1:对智能指针调用其get成员函数获取其管理的原始指针,然后再 print 。举例截图如下:

set2.png

  • 方法2:对智能指针进行解引用,然后再 print 。举例截图如下:

set1.png

References

posted @ 2022-11-09 13:37  ltimaginea  阅读(61)  评论(0编辑  收藏  举报