函数模板
函数模板可以用来创建一个通用功能的函数,以支持不同类型的形参,简化重载函数的函数体设计。
函数模板的声明形式是:
template <typename 标识符>
函数定义
例子:
template <typename T>
T function(T var)
{ return var+var; }
类模板
使用类模板的用户可以为类声明一种模式,使得类中的某些数据成员,某些成员函数的参数,某些成员函数的返回值能取任意类型。
模板类的成员函数必须是函数模板。
类模板的声明形式是:
template <模板参数表>
类声明
例子:
template <class T>
class temp
{
public:
temp(void);
T Get(void);
void Set(T);
private:
T abc;
int value;
}
声明:
temp<int> T1;
temp<float> T2;
temp<结构体类型> T3;