我在C++下面的代碼:如何避免前向聲明錯誤?
class Level;
class Node
{
char letter;
std::string path[2];
Node *next;
Level *nlevel;
public:
Node()
{
path[0] = "";
path[1] = "";
next = NULL;
nlevel = NULL;
}
Node(char l, unsigned int h)
{
letter = l;
path[0] = "";
path[1] = "";
next = NULL;
nlevel = NULL;
nlevel->height = h;
}
virtual ~Node();
};
class Level
{
std::list<Node> vnodes;
unsigned int height;
public:
Level();
virtual ~Level();
};
什麼是來電或聲明的類的正確方法是什麼?我一直在閱讀this,並且我已經嘗試在類節點之前放置class Level;
,但是我得到了一個前向聲明錯誤,如果我將每個類分開放在不同的文件中以便稍後包含它,我將會得到一個錯誤,因爲它們互相依賴,所以應該如何宣佈他們?
你會得到什麼「前向聲明錯誤」? – Galik
在'Node'之前放置'class Level'可以正常使用您發佈的代碼。 – Galik
@Galik無效使用不完整類'class Level' –