问题 填空题

若有以下程序:
#include <iostream>
using namespace std;
template <class T>
T min(T x,T y)

if(x<y)
return x;
else
return y;

int main()

int n1=2,n2=10;
double d1=1.5;d2=5.6;
cout<<min(n1,n2)<<",";
cout<<min(d2,d2)<<end1;
return 0;

程序运行后的输出结果是 【13】

答案

参考答案:2,1.5

解析: 上述程序中主函数的作用是从函数变量的两个值中挑选小的。在 main()中有两次调用min()函数,第1次以两个整数调用该函数,第2次以两个双精度数调用该函数。程序将min()设计成函数模板。当执行“min(n1,n2)”时,便建立了该函数模板的一个实例,这个过程称为函数模板实例化。生成的模板函数中两个变量的类型是int,int代替了占位符T,这个模板函数可以比较两个整数的大小。同理,当执行“min(d1,d2)”时,创建了该函数模板的第2个实例。

选择题
选择题