选择题
已知类模板Test定义如下:
template<typename T1, typename T2>
Class Test{
public:
void foo(T2 t);
};
则以下针对foo函数的类外定义中语法正确的是______。
A、
template<typename T1, typename T2> void Test::foo<T2>(T2 t){}
B、
template<typename T1, typename T2> void Test::foo<T1, T2>(T2 t){}
C、
template<typename T1, typename T2> void Test<T2>::foo(T2 t){}
D、
template<typename T1, typename T2> void Test<T1, T2>::foo(T2 t){}
【正确答案】
D
【答案解析】
本题考查的是类外部定义的成员函数额相关知识。声明一个函数模板的格式是: template<<模板形参表>><函数声明> 类外部定义的成员函数的一般格式是: <返回类型><类名>::<成员函数名>(<参数表>) { <函数体> } 根据公式,可以判断应该选择D。
提交答案
关闭