C++中的类模板
我们在定义函数时,可以通过定义函数模板,来简化一些功能相同而数据类型不同的函数的定义和调用过程。
还有一个问题要说明:上面列出的类模板中的成员函数是在类模板内定义的。
如果改为在类模板外定义,不能用一般定义类成员函数的形式:
T compare::max(){....} //不能这样定义类模板中的成员函数
而应当写成类模板的形式:
someclass<int,double> obj;
如果类模板是在A文件开头定义的,则A文件范围内为有效作用域,可以在其中的任何地方使用类模板,但不能在B文件中使用类模板定义对象。
(6)模板可以有层次,一个类模板可以作为基类,派生出派生类。