大規模な C++ プロジェクトでの問題の 1 つは、ビルド時間です。依存関係ツリーの上位に作業が必要なクラスがいくつかありますが、通常は、すべてのビルドに非常に長い時間がかかるため、作業を避けます。必ずしもパブリック インターフェイスを変更する必要はありませんが、プライベート メンバーを変更する必要がある場合があります (キャッシュ変数の追加、プライベート メソッドの抽出など)。あなたが直面している問題は、C++ ではプライベート メンバーでさえパブリック ヘッダー ファイルで宣言されているため、ビルド システムですべてを再コンパイルする必要があることです。
この状況であなたは何をしますか?
私が知っている2つの解決策をスケッチしましたが、どちらにも欠点があり、まだ考えていないより良い解決策があるかもしれません.