下列模板声明中,有语法错误的是( )。
下列模板声明中,有语法错误的是( )。
A.template<typename T>T fun(T x){return x;}
B.template<typename T>T fun(T x,int n){return x*n;}
C.template<class T>T fun(T*p){return *p;}
D.template<class T>T ClassA{T n;}
正确答案:D解析:此题考查的是函数模板的声明。声明一个函数模板的格式为:template模板形参表声明>函数声明,其中的模板形参表声明>是由一个或多个“模板形参”组成的,每个“模板形参”可具有以下几种形式:typename参数名;class参数名;类型修饰参数名。而选项D)为定义类模板的格式,即template类型形参表,class类模板名>{};。
词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。
