我的 LinkedList 实现中有两个分支。Master 是一个简单的,只适用于整数数据类型。而 _templates 是用模板设计的,可以为任何数据类型提供服务。
我的主分支完美地编译了这个:
g++ -0 t1 main.cpp LinkedList.cpp Node.cpp
另一方面,当我尝试用相同的方式编译我的 _templates 分支时(我在这个分支中使用模板更改了实现):
g++ -0 t1 main.cpp LinkedList.cpp Node.cpp
我收到链接错误:
undefined reference to `LinkedList<int>::LinkedList()'
undefined reference to `LinkedList<int>::~LinkedList()'
为了绝对清楚,我的 _templates 分支中的构造函数
template <class T>
LinkedList<T>::LinkedList() {
head = 0;
tail = 0;
}