嘿伙计们,我需要列出链接器输出中列出的一些函数.我得到的语法如下:
int foo(int num,double dnum, Temp & temp) (in namespace "funcsns")
Run Code Online (Sandbox Code Playgroud)
变成:
.text._ZN7funcsns3fooEidRNS_4TempE
Run Code Online (Sandbox Code Playgroud)
(您可能从"未定义的符号"和其他一些打印函数名称的链接错误中知道它)
现在,我可以编写一个脚本,以某种方式将其变成可读的东西,但我想知道是否有一种聪明的方法.
请分享您的想法!
谢谢.
在使用GNU工具链的系统上,该c++filt
程序完全符合您的要求.它是"binutils"包的一部分.关于其他系统的Dunno.
文本." 不是被篡改的名字的一部分.运行c++filt _ZN7funcsns3fooEidRNS_4TempE
收益率funcsns::foo(int, double, funcsns::Temp&)
.