次のようなオーバーロードされた関数があります。
void f(int)
void f(int, int)
void f(int, float)
壊れた出力を見ることができるように、それをコンパイルする方法は? 何かのようなもの:
void f(int) should show: ?f@@YAXH@Z(int)
たとえば、プリプロセッサの出力を表示するには-E
、アセンブラーの出力を使用します-s
が、名前がマングルされた出力とは何ですか?
PS: プラットフォームは Linux です
編集:
そして、ここでの答えは次のとおりです。
void func(int);
void func(int, int);
void func(void);
void func(char);
[root@localhost ~]# cat a.map | grep func
0x0804881a _Z4funcc
0x08048790 _Z4funcv
0x080487be _Z4funcii
0x080487ec _Z4funci