注册 登录
编程论坛 C++教室

大家看看呐错了

zz000cc 发布于 2010-04-05 20:38, 341 次点击
我是个新手
各位大大,帮的看看呐错了
#include<iostream>
using namespace std;
template<typename T>
T max(a,b,c);
{
    if(b>a) a=b;
    if(c>a) a=c;
    return a;
}
int main()
{
    int i1=1,i2=2,i3=3,i;
    double d1=1,d2=2,d3=3,d;
    long g1=1,g2=2,g3=3,g;
    i=max(i1,i2,i3);
    d=max(d1,d2,d3);
    g=max(g1,g2,g3);
    cout<<"i_max="<<i<<endl;
    cout<<"d_max="<<d<<endl;
    cout<<"g_max="<<g<<endl;
    return 0;
}
3 回复
#2
cnfarer2010-04-05 21:23
对照一下吧
T max(T a,T b,T c)
{
    if(b>a) a=b;
    if(c>a) a=c;
    return a;
}
#3
yyblackyy2010-04-05 22:09
#include<iostream>
using namespace std;
template<typename T>
T max(a,b,c);                              //这里得该  T max(T a,T b,T c)    后面不用加 “;”
{
    if(b>a) a=b;
    if(c>a) a=c;
    return a;
}
int main()
{
    int i1=1,i2=2,i3=3,i;
    double d1=1,d2=2,d3=3,d;
    long g1=1,g2=2,g3=3,g;
    i=max(i1,i2,i3);                                   //这里也要该 调用模板函数要指明 模板的类型  i=max<int>(i1,i2,i3);
    d=max(d1,d2,d3);                                            //同上                          d=max<double>(d1,d2,d3);
    g=max(g1,g2,g3);                                              //同上                         g=max<long>(g1,g2,g3);
    cout<<"i_max="<<i<<endl;
    cout<<"d_max="<<d<<endl;                                    
    cout<<"g_max="<<g<<endl;                           
    return 0;
}
#4
zz000cc2010-04-05 22:11
小弟谢谢各位咯
1