问题
填空题
如下程序声明了一个使用两个通用数据类型的模板类dataClass,其中构造函数用于初始化两个数据成员,成员函数show用于输出两个数据成员的数值。 #include<iostream> using namespaee std; ______ T1 i; T2 j; public: dataClass(T1 a,T2B) {i=a;J=b;} void show( ){eout<<i<<","<<j<<’\n’;} }; int main( ){ dataClass<int,double>obl(10,0.23); dataClass<char,char*>oh2(’X’,"my data"); obl show( ); ob2.show( ); return 0; } 请将程序补充完整,使程序在运行时输出: 10,0.23 X,my data
答案
参考答案:template<class T1,class T2>
解析:class dataClass{ 类模板的声明一般格式为: template<typename类型参数>Class类名{类成员声明}其中类型参数可以为多个。题中出现了两个类型参数T1、T2,故应该在类模板的头部声明中声明两个类型参数T1、T2。