template <class T>
T Bucky<T>::bigger(){
return (first>second?first:second);
}
为什么我们需要把&lt;&gt;之前的Bucky之前::在上面的代码中?
答案 0 :(得分:2)
函数的类外定义需要指定它所属类的命名限定符。
显然Bucky
是模板类:
template<typename T>
class Bucky {
T bigger();
};
完整限定符为Bucky<T>
,因此您必须在函数定义中指定。
扩展一点:编译器应该如何区分
class Bucky {
};
否则,这是一个不同的类,同时存在有效。