程序代碼
#include <iostream>
using namespace std;
int max(int a,int b,int c){
if(b>a) a=b;
if(c>a) a=c;
return a;
}
float max(float a,float b,float c){
if(b>a) a=b;
if(c>a) a=c;
return a;
}
long max(long a,long b,long c){
if(b>a) a=b;
if(c>a) a=c;
return a;
}
int main(){
int a,b,c;
float d,e,f;
long g,h,i;
cin >>a>>b>>c;
cin >>d>>e>>f;
cin >>g>>h>>i;
int m;
m=max(a,b,c);
cout <<"max_i="<<m<<endl;
float n;
n=max(d,e,f);
cout <<"max_f="<<n<<endl;
long int p;
p=max(g,h,i);
cout <<"max_l"<<p<<endl;
}
執(zhí)行結(jié)果

執(zhí)行結(jié)果
代碼分析
1.在上述的例子當中我們看到max函數(shù)名字被使用了很多次,在c++當中,只要函數(shù)聲明的類型不同,就可以重復使用函數(shù)的名字定義函數(shù),在一定的作用域當中一個函數(shù)名稱定義多個函數(shù),這叫做函數(shù)的重載。
2.main函數(shù)三次調(diào)用了max函數(shù),系統(tǒng)會根據(jù)實參的類型自動去尋找與之對應(yīng)的函數(shù)。