两个以上的函数,具有相同的函数名,但是形参的个数或者类型不同,编译器根据形参和实参的类型及个数的最佳匹配,自动确定调用哪一个函数,这就是函数的重载。
注意:重载函数的形参必须不同:个数不同或者类型不同。编译程序对实参和形参的类型及个数进行最佳匹配,来选择调用哪一个函数。如果函数名相同,形参类型也相同(无论返回值类型是否相同),在编译时会被认为是语法错误。
`int add(int x,int y);int add(int a,int b);//error `
int add(int x,int y);void add(int x,int y);//error
注意:防止二义性
void f(int a,int b=1,int c=2);
void f(int a);
f(1);//此时无法确定应该执行哪个重载函数