2つのクラスを含む2つのヘッダーファイルがあります。各クラスは、次のように他のクラスに依存しています。
// class1.h
#include "class2.h"
class ClassOne {
ClassTwo* c2;
};
// class2.h
#include "class1.h"
class ClassTwo {
ClassOne* c1;
};
コードがコンパイルされないことを期待していたので、ヘッダーの1つに前方宣言を追加しました。
// class1.h
#include "class2.h"
class ClassTwo;
class ClassOne {
ClassTwo* c2;
};
しかし悲しいことに、それも機能していません。「未定義の型'ClassTwo'の使用」でコンパイラエラーが発生し続けます。
それらを1つのヘッダーファイルに結合するだけで機能することはわかっていますが、実際には両方とも非常に大きなクラスであり、組織化のために独自のヘッダーファイルを用意することをお勧めします。
これを回避する方法はありますか?
ありがとう、アレックス