写了3年多C++程序,很少用到模板,我靠,今天想试一下,照着别人的例子写,什么鬼,怎么都运行不过,仔细比对代码才发现,C++模板的声明与定义必须放到一个文件,.h或者.hpp, 真是颠覆我对C++编程的认知,什么坑爹的语法。网上找资料,看博客,看书,才知道必须这样写,太坑了。
例如我写的一个A 模板类,A.h文件:
#pragma once
#include <iostream>
using namespace std;
template<class T>
class A
{
public:
A(T a);
~A();
void print();
private:
T a;
};
template<class T>
A<T>::A(T a)
{
this->a = a;
}
template<class T>
A<T>::~A()
{
}
template<class T>
void A<T>::print()
{
cout << this->a << endl;
}
</