#include <iostream.h>
template<class T>
T func(T x,T y){
if(sizeof(T)==8)
return  ______________;
else
return _______________;
}
void main(){
cout <<func(8,5)<<":"<<func(5.0,10

完成程序题:请按空格顺序填写答案。

使程序执行结果为:40:15


#include <iostream.h>
template<class T>
T func(T x,T y){
if(sizeof(T)==8)
return  ______________;
else
return _______________;
}
void main(){
cout <<func(8,5)<<":"<<func(5.0,10.0)<<endl;
int d;cin >>d:
}


【正确答案】:

第1空:X+Y
第2空:X*Y


【题目解析】:

sizeof() 是一个判断数据类型或者表达式长度的运算符

本题中,输出“func(8,5)”:"<<func(5.0,10.0)”的结果为40:15,即要求先输出乘法结果,后输出加法结果。

使用类模板,用户可以为类定义一种模式,使得类中的某些成员变量、默认成员函数的参数、某些成员函数的返回值及局部变量能取任意类型。

8和5是int类型数据占4个字节,5.0和10.0是double型数据,占8 个字节。故符合条件返回x+y,否则返回x*y。


Top