我試圖爲一個雙向鏈接列表的節點類建立一個模板文件。每當我嘗試編譯時,我都會遇到這個錯誤。ISO C++禁止聲明沒有類型的「DNode」
ISO C++禁止「DNode」的declatation無類型
似乎在迴應我的函數返回DNode指針出現。我一直在爲此工作好幾天,似乎無法做出正面或反面的評論。
#ifndef DNODE_H
#define DNODE_H
#include <cstdlib>
#include <string>
#include <iostream>
#include <iterator>
template <class T>
class DNode
{
public:
DNode(T StartingData = T(), DNode* PrevLink = NULL, DNode* NextLink = NULL)
{Data = StartingData; previous = PrevLink; next = NextLink;}
void setData(T item)
{Data = item;}
void setNext(DNode *l)
{next = l;}
void setPrevious(DNode *l)
{previous = l;}
*DNode getPrevious() {return previous;}
*DNode getNext() {return next;}
T getData()
{return Data;}
private:
DNode *previous, *next;
T Data;
};
#endif
究竟是'* DNode' in'* DNode getPrevious()'應該是什麼?那是不對的。 –