1.C语言不支持重载,C++支持函数重载。
2.函数重载的实现原理为名字改编(name mangling) :当函数名称相同时,会根据形参的个数,类型,顺序来进行名字改编。
3.改编后的函数名的查看方法:对源文件只进行编译不进行连接,得到的目标文件.o,然后使用nm命令进行查看。
例1:
int add(int a, int b){ //名称改编后的名字:addii
return a + b;
}
int add(int a, double b, int c){ //名称改编后的名字:addidi
return a + b + c;
}
int main(){
int a = 3;
int b = 4;
printf("a + b = %d\n", add(a, b)); //会根据形参的个数,类型,顺序找到不同的函数
return 0;
}