1原理
编译器通过函数名和其参数类型识别重载函数。为了保证类型安全的连接(type-safe linkage),编译器用参数个数和参数类型对每一个函数标识符进行专门编码,这个过程有时称为“名字改编”(name mangling)或“名字修饰”(name decoration)。类型安全的连接使得程序能够调用合适的重载函数并保证了参数传递的一致性。编译器能够检测到并报告连接错误。
2查看符号表
objdump -t
3测试
void func(int n){}
void Func(int n,int m){}
int main(){return 0;}
3.1结果
_Z是规定前缀,4是函数名的字符个数,i是参数列表类型i的首字母