1
我是新的C++編程。這裏是我的代碼:C++錯誤:字段具有不完整的類型 - 宣佈它自己的類對象
#ifndef NODE_H
#define NODE_H
class Node
{
public:
Node();
Node(int);
virtual ~Node();
Node(const Node& other);
int getValue() { return value; }
void setValue(int val) { value = val; }
Node getPrev() { return prev; }
void setPrev(Node val) { prev = val; }
Node getNext() { return next; }
void setNext(Node val) { next = val; }
private:
int value; //!< Member variable "value"
Node prev; //!< Member variable "prev"
Node next; //!< Member variable "next"
};
#endif // NODE_H
它說:
error field 'prev' has incomplete type
error field 'next' has incomplete type
如果我使用指針/引用,該程序工作正常。爲什麼這個機制存在?如何做到沒有指針/參考? 感謝您的回覆。
如果每個'Node'包含'int'和兩個'Node's,那麼它的規模將是無限的。這可能不是你想要的。 – Quentin
*「如何做沒有指針/引用?」 *長話短說:你不能。 –
替代欺騙:https://stackoverflow.com/questions/6349822/incomplete-type-in-class-which-has-a-member-of-the-same-type-of-the-class-itse –