07/11/07 17:57:33
class CSymbol : public CCode
を記述するヘッダファイルには
#include "Code.h"
が必要。
hogemethod(CSymbol symbol);
を記述するヘッダファイル側にも
#include "Symbol.h"
が必要。
親クラスが子クラスを知るような設計にするからこうなる。
どうしてもやりたいのなら、
hogemethod(CSymbol *symbol);
とするようにすればヘッダファイルには、
class CSymbol;
を書いておくだけでよい。んで、実装する*.cppファイルで
#include "Symbol.h"
を書く。
ヘッダファイル同士の依存関係について、
調べてみるとよいかも。
前方参照(?) (class CSymbol;など)
を使って抽象的にヘッダファイルを書いておき、
詳細な定義は*.cppの実装でこそincludeする。
…って感じだっけ?