template <class T>
T Bucky<T>::bigger(){
return (first>second?first:second);
}
为什么上面的代码中要在Bucky之后的::之前加上呢?
函数的类外定义需要指定其所属类的命名限定符。
明显地Bucky
是一个模板类:
template<typename T>
class Bucky {
T bigger();
};
完整的预选赛是Bucky<T>
,因此您必须在函数定义中指定。
扩展一下:编译器应该如何区分它和
class Bucky {
};
否则,这是一个不同的类并且可以同时存在。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)