1.形式
template <typename T>
class A
{
public:
A();
virtural ~A();
A(A<T> const & );
T get();
}
template <typename T>
T A<T>::get()
{
}
类名 :A
类型 :A<T>
静态成员 每种类型就实例化一个
成员函数在 调用时才实例化
2.特化
template <>
class A<int>
{
public:
int get();
}
int A<int>::get()
{
}
成员函数调用时,函数特化版本必须存在!
3.局部特化
template <typename T1,typename T2>
class A<T1,T2>
{
}
template <typename T>
class A<T,T>
{
}
4.默认模板参数
template <typename T ,typename conf=T>
class A
{
};