1.函数重载的定义
在C++语言中,同一作用域下允许有多个同名函数的存在,但要求它们的参数列表必须不同。C++语言把这种形式称为函数重载。
注:返回值类型和形参名与函数重载无关。
2.函数重载常见错误
①函数重载错误——参数默认值
2 #include<iostream.h>
3 void f(int);
4 void f(int=0,int=1);
5 int main()
6 {
7 f();//正确,不提供参数调用第二个f
8 f(10,11);//正确,提供两个参数调用第二个f
9 //f(100);错误,提供一个参数,模棱两可的函数调用
10 return 0;
11 }
②函数重载错误——数据类型隐式转换
2 #include<iostream.h>
3 void f(int);
4 void f(float);
5 int main()
6 {
7 f(1);//正确,提供int型参数调用第一个f
8 f(1.1f);//正确,提供float型参数调用第二个f
9 //f(1.1);错误,提供double型参数,模棱两可的函数调用
10 return 0;
11 }