オープンソースのコードベースを見ると、次のコードに出くわしました:
#include "StableHeaders.h"
#include "polygon.h"
#include "exception.h"
#include "vector.h"
...
現在、StableHeaders.h は、生成を強制するために「コントロール」cpp に含まれるプリコンパイル済みヘッダーです。いずれにせよ、プリコンパイル済みヘッダーの後に表示される 3 つのインクルードも StableHeaders.h ファイルに含まれています。私の質問は、プリコンパイル済みヘッダーをサポートしていないコンパイラでコード ベースがビルドされるように、これらのファイルが 2 回含まれているのでしょうか? とにかく、インクルードガード/ヘッダーキャッシングにより、複数のインクルードが冗長になると仮定しています...
EDITところで、stableheaders.hファイルにはwin32のチェックがあります(大まかに)ので、stableheaders.h内のインクルードがプリコンパイル済みヘッダーをサポートしないコンパイラーに含まれないと仮定します。