ここに、Node と DobleNode の 2 つのクラスがあります。どちらも別の .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 Professional、C ++(明らかに)に取り組んでいます。