c++ - 没有源代码的gdb中的方法定义

标签 c++ gdb ddd-debugger

我有一个没有源的调试构建开始。 ptype 为我提供了类定义以及其中声明的方法原型(prototype)。

(gdb) ptype A

type = class A : public B {

  private:

    int c;


  public:

    virtual void accept(Ivisitor &V);

    virtual int getItem(void) const;

}

如何在 gdb 中获取方法 accept()getitem() 的定义?

请注意,我没有调试版本的源代码。

(gdb) l A::accept

Line 469 of "const.h" starts at address 0x433d9c <A::accept(Ivisitor>)> and ends at 0x433db1 <A::accept(Ivisitor>)+21>.

最佳答案

不附源码无法查看函数定义。类定义被视为加载符号表。

关于c++ - 没有源代码的gdb中的方法定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41737656/

相关文章:

c++ - Eclipse CDT/GDB 错误 : Undefined maintenance set command: "python print-stack off". 尝试 "help maintenance set"

c++ - 如何在 cpp 中使用 CRLF 分隔符拆分字符串?

emacs - 当鼠标悬停在 Emacs/gdb 上时显示变量的值?

c++ - c++中分号前只有一个整数的一行代码

c++ - CertGetCertificateChain 带有支持的内存存储和证书信任列表

c - 为什么调用函数会修改参数中未给出的指向函数的指针数组的值?

c++ - 为什么当从 VSCode 使用 GDB 时遇到断点时,GDB 会使我的程序崩溃?

gdb - 如何在 coredump 中找到地址?

c++ - 安装 ddd - fatal error

gdb - ddd 在启动时挂起