【C++】函数重载
在c语言中,每个函数必须有一个唯一的名字,这样就必须记住每一个函数的名字。例如:求面积的函数,圆形、矩形、梯形每个都要有一个单独的函数。而c++中允许多个同名函数存在,即函数的重载。函数重载的要求是每个函数的参数不同:参数个数不相同,或者参数类型不相同。
注意:1.函数重载是通过区分参数的个数和类型来实现的,与返回值无关。
2.重载函数不可与带默认值的函数同名,否则系统无法判定调用哪一个。
{
void point(int a,int b);
void point(int a,int b=2,int c=3);
point(x,y); //会不知道该调用哪一个
}
代码实现:
例如:求面积的函数。虽然都是求面积的函数,但可以通过参数的个数不同来区分。
//函数重载
#include<iostream>
using namespace std;
double area(double r); //圆
double area(double w,double h); //矩形
double area(double a,double b,double h); //梯形
int main()
{
double r=5;
double s1;
s1=area(r);
cout<<"圆的面积:"<<s1<<endl;
double w=2,h=5;
s1=area(w,h);
cout<<"矩形的面积:"<<s1<<endl;
double a=3,b=5,h1=10;
s1=area(a,b,h1);
cout<<"梯形的面积:"<<s1<<endl;
return 0;
}
double area(double r)
{
double s=3.13*r*r;
return s;
}
double area(double w,double h)
{
double s=w*h;
return s;
}
double area(double a,double b,double h)
{
double s=(a+b)*h/2;
return s;
}
运行结果:
------------------------------------------- END -------------------------------------