类模板名可以作为
1。类型指示符,这时需加模板参数表,有的情况可以不加
在类域之中时,可以省略模板参数表,类域=类范围+类外函数定义(从函数名开始,前面的修饰,返回值类型忽略,到函数结束)
2。函数名(构造函数,析构函数),这时无需加模板参数表,写上可以的
template<class T>class A{public:// A<T>(){} //ok A(){} A(int i); A(const A &ra); //A<T>&可以};
template<class T>A<T>::A(int i){cout << 3 << endl;} //A::不可以,A<T>::A<T>可以
template<class T>A<T>::A(const A &ra){cout << 33 << endl;} //A<T>&可以
int main(){ A<int> ia(333); A<int> ib(ia); return 0;}