问题
单项选择题
下面的函数模板定义中错误的是
A.template <class Q> q F(Q {return Q+x;}
B.template <class Q> Q F(Q {return x+x;}
C.template <class T> T F(T{return x*x;}
D.template <class T> bool F(T{return x>1;}
答案
参考答案:A
解析: 本题考核函数模板的定义。模板定义的<类型参数表>中包含一个或多个由逗号分隔的类型参数项,每一项由关键字class后跟一个用户命名的标识符,此标识符为类型参数,它不是一种数据类型。A) 选项中标识符Q作为类型参数,不能用作数据类型参与"Q+x"的运算。