参数化多态性,就是将程序所处理的对象的类型参数化,使一段程序可以用于处理多种不同类型的对象
函数模板:
template<模板参数表>
类型名 函数名(参数表)
{
函数体的定义
}
(1)typename 和class标识符,指明可以接受一个类型参数。这些参数代表的是类型,可以是内部类型或自定义类型
(2)类型说明符 标识符,指明可以接受一个由“类型说明符”所规定的常量作为参数
(3)template<参数表>class标识符,可以接受一个类模板名作为参数
类模板:
使用类模板用户可以为类定义一种模式,是类中的某些数据成员,某些成员函数的参数,返回值或局部变量取任意值
template<class T>
class 类名
{
public:
类名(int i);
void print();
}
template<class T>
类型 类名<T>::函数名