下面定义类模板模板参数的定义语句错误的是()。
A.template <class T1,class T2,class T3=double,int N=100>
B.template <class T1,class T2=double,class T3,int N=100>
C.template <class T1,class T2,class T3,int N>
D.template <class T1,class T2=double,class T3=float,int N=100>
第1题:
补充完整下面的模板定义:
template<class Type> //Type为类型参数
class Xtwo{ //由两个Type类型的数据成员构成的模板类
Type a;
Type b;
public:
Xtwo(Type aa=0,Type bb=0):a(aA) ,b(bB) { }
int Compare( ){ //比较a和b的大小
if(a>B) return 1;
else if(a==B) return 0;
else return-1;
}
Type Sum( ){return a+b;} //返回a和b之和
Type Mult( ); //函数声明,返回a和b之乘积
};
template<class Type>
______ ::Mult( ){return a*b;} //Mult函数的类外定义
第2题:
关于模板,下列说法不正确的是( )。
A.用类模板定义一个对象时,不能省略实参
B.类模板只能有虚拟类型参数
C.类模板本身在编译中不会生成任何代码
D.类模板的成员函数都是模板函数
第3题:
A、一旦定义了函数模板,就不能再定义同名的重载函数;
B、从同一个函数模板实例化后得到的多个模板函数属于函数重载;
C、函数模板中只有一种参数;
D、在定义函数模板时,template语句与函数模板定义语句之间可以有别的语句。
第4题:
关键字class和typename用于定义模板类型参数,其含义为()。
A、任何用户定义的类类型
B、C++内部的类型
C、A与B
D、都不是
第5题:
下面关于模板的描述,错误的是
A.函数模板和类模板的参数可以是任意的数据类型
B.类模板不能直接使用,必须先实例化为相应的模板类,然后定义了模板类的对象后才能使用
C.函数模板不能直接使用,需要实例化为模板函数后才能使用
D.类模板的成员函数都是模板函数
第6题:
( 25 )下列关于类模板的模板参数的叙述中,错误的是
A )模板参数可以作为数据成员的类型
B )模板参数可以作为成员函数的返回类型
C )模板参数可以作为成员函数的参数类型
D )模板参数不能作为成员函数的局部变量的类型
第7题:
( 25 )下列关于类模板的描述中,错误的是
A )类模板的成员函数都是模板函数
B )可以为类模板参数设置默认值
C )类模板描述了一组类
D )类模板中只允许有一个类型参数
第8题:
A、函数模板也是一个具体类型的函数
B、函数模板的类型参数与函数的参数是同一个概念
C、通过使用不同的类型参数,函数模板可以生成不同类型的函数定义
D、用函数模板定义的函数没有类型
第9题:
下列关于类模板的描述中,错误的是( )。
A.类模板的成员函数都是模板函数
B.可以为类模板参数设置默认值
C.类模板描述了一组类
D.类模板中只允许有一个类型参数
第10题:
A、类模板的成员函数可以是函数模板
B、类模板生成模板类时,必须指定参数化的类型所代表的具体类型
C、定义类模板时只允许有一个模板参数
D、类模板所描述的是一组类