错误重新声明“ <>”可能没有默认参数

时间:2018-11-10 23:50:14

标签: c++ templates data-structures nodes

我的Node类有问题,我创建了该类的接口和实现文件。当我构建它时,会发生此错误:“ 错误:'Node :: Node(const T&,Node ,N ode )'的重新声明”可能没有默认参数[-fpermissive] Node: :Node(const T&item = T(),节点* nxt = NULL,节点* bck = NULL)”。

我的界面

#ifndef NODE_HPP
#define NODE_HPP

#include <iostream> 
using namespace std;

template <typename T>
class Node {  
public:     
T item;     
Node<T> *next;  
Node<T> *back;  
Node(const T &item = T(), Node<T> *nxt = NULL, Node<T> *bck = NULL); };
#endif

和我的实现代码

 #include "Node.hpp"
 template <typename T>
 Node<T>::Node(const T &item = T(), Node<T> *nxt = NULL, Node<T> *bck = NULL)
    {
        this->item = item;
        next = nxt;
        back = bck;
    }
  

已解决

我这样更改了我的实现代码并解决了。

#include "Node.hpp"
template <typename T>
Node<T>::Node(const T &item, Node<T> *nxt, Node<T> *bck)
{
    this->item = item;
    next = nxt;
    back = bck;
}

0 个答案:

没有答案