如题,编译时总是说[Error]ldreturned1exitstatus(编译器devc++)`#includeusingnamespacestd;templateclassCValue{tdata[5];public:CValue(){cout
2 回答
哆啦的时光机
TA贡献1779条经验 获得超6个赞
你需要实例化模板函数friendtMax<>(CValue&a) c#include usingnamespacestd;templateclassCValue; templateTMax(CValue &a){ Tx=a.data[0];for(inti=1;i<5;i++)if(xreturnx; }templateTMin(CValue &a){ Tmin=a.data[0];for(inti=1;i<5;i++)if(min>a.data[i])min=a.data[i];returnmin;}template classCValue{Tdata[5];public:CValue(){cout<<"pleaseinput5numbers"<for(inti=0;i<5;i++) cin>>data[i];}friendTMax<>(CValue&a); friendTMin<>(CValue&a); };intmain(){cout<<"整数对象a,";CValuea; cout<<"浮点数对象b,";CValueb; cout<<"整数元素对象a的元素最大值为:"<cout<<"整数元素对象a的元素最小值为:"< cout<<"浮点数元素对象b的元素最大值为:"< cout<<"浮点数元素对象b的元素最小值为:"< }
慕的地8271018
TA贡献1796条经验 获得超4个赞
修改了一下,看报错的行数,你就知道自己错哪里了。还有取最大小值if(x 多用花括号,哪怕只有一行语句,保证程序可读性。#include usingnamespacestd;template classCValue{tdata[5];public:CValue(){cout<<"pleaseinput5numbers"<for(inti=0;i<5;i++) cin>>data[i];}friendtMax(CValue&a); friendtMin(CValue&a); };templatetMax(CValue &a){ tx=a.data[0];for(inti=1;i<5;i++){if(xx=a.data[i]; }}returnx;}templatetMin(CValue &a){ tmin=a.data[0];for(inti=1;i<5;i++){if(min>a.data[i]){min=a.data[i];}}returnmin;}intmain(){cout<<"整数对象a,";CValuea; cout<<"浮点数对象b,";CValueb; cout<<"整数元素对象a的元素最大值为:"<cout<<"整数元素对象a的元素最小值为:"< cout<<"浮点数元素对象b的元素最大值为:"< cout<<"浮点数元素对象b的元素最小值为:"< return0; }
添加回答
举报
0/150
提交
取消