我有一个巨大的代码基础,几个命名空间是作用域的,不幸的是我错过了我的方法是哪个命名空间。
如果我只有一个方法名称,GDB会帮助我完成这项任务吗?它可以搜索命名空间来查找我的方法吗?
e.g:
(gdb) b getTranslation
Function "getTranslation" not defined.
Make breakpoint pending on future shared library load? (y or [n]) n
(gdb) b HPHP::jit::getTranslation
Function "HPHP::jit::getTranslation" not defined.
Make breakpoint pending on future shared library load? (y or [n]) n
(gdb) b HPHP::jit::MCGenerator::getTranslation
Breakpoint 1 at 0x16a1a058: file hhvm/hphp/runtime/vm/jit/mc-generator.cpp, line 308.
(gdb) # Ahhh, finally!
通常我会运行代码并开始收集命名空间,但有时它们很棘手,因为在标题的中间定义了新的命名空间...
答案 0 :(得分:3)
使用this question and its answers作为提示,您可以使用例如info functions getTranslation
,它应该列出名为getTranslation
的所有函数以及类/名称空间。