下列函数模板的定义中 合法的是A.template <typename T> T abs(T x){return x<0?-x:x;}B.templat
函数,定义,模板
已帮助 人
下列函数模板的定义中,合法的是
A.template <typename T> T abs(T x){return x<0?-x:x;}
B.template class <T> T abs(T x){return x<0?-x:x;}
C.template T<class T>abs(T x){return x<0?-x:x;}
D.template T abs(T x){return x<0?-x:x;}
请帮忙给出正确答案和分析,谢谢!
-
正确答案:A
解析:本题考查的知识点是:函数模板。声明一个函数模板的格式是:
template<<模板形参表声明>><函数声明>
其中的<模板形参表声明>是由一个或多个<模板形参>组成。每个<模板形参>具有下面几种形式:
(1)typename<参数名>
(2)class<参数名>
(3)<类型修饰><参数名>
故本题应该选择A。
