max 函数重载 程序交流只为进步 欢迎指正代码缺点 新人 希望 提高
/*【基本题】实现重载max的函数,让它接受以下参数
(a) 两个整数
(b) 两个浮点数
(c) 两个字符串
(d) 一个整数数组,以及一个表示数组大小的整数值
最后撰写main()测试这些函数。
*/
#include<iostream>
#include<string>
using namespace std;
class Max{
public :
int max(int & a,int &b )const
{
if(a<b)
return b;
return a;
}
double max(double & a,double &b )const
{
if(a<b)
return b;
return a;
}
char * max(char *& a,char *&b )const
{
if(strcmp (a,b)<0)
return b;
else
if(strcmp (a,b)==0)
return a;
else
return a;
}
int max(int *a,int n)const
{
int max=*(a);
for(int i=0;i<n-1;i++)
if(max<*(a+i+1))
max=*(a+i+1);
return max;
}
};
void main()
{
int a=8,b=9;
double c=2,d=3;
char *e="sad",*f="sdf";
int array[3]={1,2,3},n=3;
Max m;
cout<<m.max(a,b)<<endl;
cout<<m.max(c,d)<<endl;
cout<<m.max(e,f)<<endl;
cout<<m.max(array,3)<<endl;
}