我们有一个C ++程序,例如:
int&
Instance()
{
static int test;
return test;
}
int
main( int argc, char ** argv )
{
int& test = Instance();
printf("%d\n",test);
return 0;
}
现在我正在尝试打印Instance :: test,正如一些gdb文档所建议的那样:ftp://ftp.gnu.org/old-gnu/Manuals/gdb/html_node/gdb_52.html
但是,这会产生:
(gdb)p Instance :: test
没有符号"测试"在指定的背景下。
我正在使用-O0 -g进行编译。
答案 0 :(得分:7)
(gdb) p 'Instance()::test'
适用于Ubuntu 14.04,gdb 7.7,g ++ 4.8.2。我怎么知道那是符号?
$ nm -C a.out | grep test
0000000000601040 d Instance()::test