下面是一个模板声明的开始部分: template <class T > double… 由此可知( )。
A. 这既可能是一个函数模板的声明,也可能是一个类模板的声明
B. 这可能是一个函数模板的声明
C. 这可能是一个类模板的声明
D. 这肯定是一个错误的模板声明
查看答案
以下关于类模板的模板参数的叙述中,错误的是( )。
A. 模板参数不能作为成员函数的局部变量的类型
B. 模板参数可以作为数据成员的类型
C. 模板参数可以作为成员函数的返回类型
D. 模板参数可以作为成员函数的参数类型
有如下函数模板: template < class T >T square(T x) {return x * x;} 其中T是( )。
A. 函数实参
B. 函数形参
C. 模板形参
D. 模板实参
有如下函数模板定义: template T< class T > func(T x,T y){return x*x+y*y;} 在下列对func的调用中,错误的是( )。
A. func(3.0,5.5);
B. func<>(3,5);
C. func(3,5.5);
D. func(3,5.5);
关于关键字class和typename,下列表述中正确的是( )。
A. 程序中所有的typename都可以替换为class
B. 程序中所有的class都可以替换为typename
C. 程序中部分typename都可以替换为class
D. 程序中所有的class都不可以替换为typename