问题 单项选择题

下面的函数模板定义中错误的是

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"的运算。

选择题
问答题 简答题