这是我的两个类,Node 和 DobleNode,它们都在不同的 .h 文件中,并且它们都有自己的 .cpp 文件。
//"Node.h"
class Node
{
public:
Node(string pName, string pID);
void setReferencia(DobleNode *pReferencia);
DobleNode* getReferencia(void);
private:
string Name;
string ID;
DobleNode *referencia;
};
//"DobleNode.h"
class DobleNode
{
public:
DobleNode(string pBank_code, string pCard_type);
void setReferencia(Node *pReferencia);
Node* getReferencia(void);
private:
string bank_code;
string card_type;
Node *referencia;
};
问题是我需要参考。在 Node 类中,必须有一个 DobleNode 类型的属性,在 DobleNode 类中,必须有一个 Node 类型的属性。看起来很简单,我只需要在“Node.h”之前包含“DobleNode.h”,一切都会奏效......
但是,如果我这样做,稍后,当我尝试编译我的小程序时,它会说标识符 Node 不存在。如果我换一种方式,它会说同样的事情,但这次标识符 DobleNode 是不存在的。
我该如何解决这个问题,我认为解决方案可能是将两个类放在同一个文件中,但我真的认为有更好的方法来解决这个问题。有没有办法“告诉”编译器同时检查“Node.h”和“DobleNode.h”,或者什么?
感谢您的回答。
顺便说一句,我正在使用 Visual Studio 2010 Proffesional,C++(显然)。