多くの.hと.cppを含む小さなC++フレームワークを作成しています。
次のようなすべての.hファイルを含む一般的なインクルードを作成しました。
framework.h
#include "A.h"
#include "B.h"
#include "C.h"
各.hヘッダーは、次のようなインクルードガードで保護されています
#ifndef A_HEADER
#define A_HEADER
...
#endif
問題は、などのすべてのsub .h内に「framework.h」を含めることができるようにしたいのですが、多くのコンパイラエラーが発生します。
#ifndef A_HEADER
#define A_HEADER
#include "framework.h"
...
#endif
代わりに、各サブヘッダーに実際のヘッダーファイルを使用し、フレームワークを使用するものにframework.hを使用すると、正常に機能します。
すべてのサブ.h内にメインヘッダーを含めたいので、毎回すべての依存関係を含める必要はありません。
ありがとう :)