我正在尝试将 push_back 函数用于 c++ 中的向量。我遇到了段错误,当我运行 gdb 以找到确切原因时。
我得到以下。
$1={px = 0xbfffe9c4, pn = { pi_ = 0x8049c0b}}
我对 gdb 没有太多经验,也无法在网上找到与此特定问题相关的任何内容。
我的魔法球告诉我你在取消引用时崩溃了shared_ptr
。关注该px
成员,因为这是您感兴趣的实际指针值。例如,您可以尝试:
print $1.px
如果指针指向一个有效的内存区域:
print *$1.px
调试器gdb
会为你提供很多信息,但一些更有用的东西:backtrace
、up
、down
、info locals
,如果你是多线程的,thread apply all backtrace
. 如果您正在现场调试,那么您当然需要breakpoint
、next
和. 您应该能够使用的帮助来获取更多信息,并且该手册可以在线获取。step
continue
gdb
gdb