我的链表类遇到了一个问题,我已经创建了该类的接口和实现文件,但在构建它时,会出现以下错误:"在没有参数列表的情况下无效使用模板名称'LinkedList'"。这是我的接口文件:
#ifndef LINKEDLIST_H
#define LINKEDLIST_H
template <typename T>
struct Node{
T info;
Node<T> *next;
};
template <typename T>
class LinkedList
{
Node<T> *start;
Node<T> *current;
public:
LinkedList();
~LinkedList();
};
#endif // LINKEDLIST_H
这是我的实现代码:
#include "LinkedList.h"
LinkedList::LinkedList()
{
start = nullptr;
current = nullptr;
}
LinkedList::~LinkedList()
{
}
这样写:
template<typename T>
LinkedList<T>::LinkedList()
{
start = nullptr;
current = nullptr;
}
其他成员函数也是如此。但您会遇到另一个问题——模板的声明和定义不能分离到不同的文件中。