38

我的链表类遇到问题,我已经创建了类的接口和实现文件,但是当我构建它时,出现此错误:“模板名称'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()
  {

  }
4

1 回答 1

64

像这样写:

template<typename T>
LinkedList<T>::LinkedList()
{
   start = nullptr;
   current = nullptr;
}

对于其他成员函数也是如此。但是你会遇到另一个问题——模板的声明和定义不能分开到不同的文件中。

于 2013-08-12T12:25:00.297 回答