我有一个类看起来像这样:
namespace madoka
{
class polarizable_sites
{
public:
void resize(const size_t dim_);
void clear(void);
};
}
Run Code Online (Sandbox Code Playgroud)
在gdb中,我可以设置明确的断点
b 'madoka::polarizable_sites::clear()'
Run Code Online (Sandbox Code Playgroud)
但是,对于成员函数调整大小,a
b 'madoka::polarizable_sites::resize(const size_t)'
Run Code Online (Sandbox Code Playgroud)
不起作用.GDB报告错误:
类madoka :: polarizable_sites没有任何名为resize的方法(const size_t)提示:尝试'madoka :: polarizable_sites :: resize(const size_t)'或'madoka :: polarizable_sites :: resize(const size_t)'(注意引导单引号.)
我想知道为什么因为功能样式是由TAB自动完成的.
顺便说一句:我正在使用GDB
GNU gdb(Ubuntu/Linaro 7.2-1ubuntu11)7.2版权所有(C)2010 Free Software Foundation,Inc.
用编译器'
g ++(Ubuntu/Linaro 4.5.2-8ubuntu4)4.5.2版权所有(C)2010 Free Software Foundation,Inc.
可能该函数是内联的。如果它是 GDB 语法中的 x86 代码,请尝试添加__asm int 3并遍历代码。这个技巧在调试 MSVC x86 代码时节省了我很多时间。