注册 登录
编程论坛 新人交流区

再次发贴

vczxz 发布于 2007-10-29 22:49, 169 次点击
template <class T>
T max(T x,T y)
#include <iostream.h>
{
return(x>y)?(x):(y);
}
double max(double ,double);//重载了一个double类的函数为什么这一个题还是不能运行
void main()
{
int x=3,y=4;
long l=5;
double a=1.1,b=3.4;
cout<<max(x,y)<<endl;//调用int max(int ,int)
cout<<max(a,b)<<endl;//调用double max(double ,double)
cout<<max(l,a)<<endl;//调用double max(double ,double)
cout<<max(a,l)<<endl;//调用double max(double ,double)
cout<<max(x,l)<<endl;//调用double max(double ,double)
}
怎么没有人回我啊
我发了几个星期了

2 回复
#2
okdo992007-10-30 00:06
居然看不懂
#3
vczxz2007-10-30 16:54
这是自考书上一个例题
原题是这样的,一个字都不差:
template <class T>
T max(T x,T y)
{
return(x>y)?(x):(y);
}
double max(double ,double);//重载模板函数
//也可使用原型int max(int,int)
//只能从其中选择一个
#include "iostream.h"
void main()
{
int x=3,y=4;
long l=5;
double a=1.1,b=3.4;
cout<<max(x,y)<<endl;//调用模板int max(int ,int)
cout<<max(a,b)<<endl;//调用模板double max(double ,double)
cout<<max(l,a)<<endl;//调用重载double max(double ,double)
cout<<max(a,l)<<endl;//调用重载double max(double ,double)
cout<<max(x,l)<<endl;//调用重载double max(double ,double)
}
程序最后输出为:
4
3.4
5
5
5
1