ライブラリをビルドするときではなく、主にアプリケーション レベルのインポートについて言及しています。
2 に答える
このファイルのポイントは、.pch
一度プリコンパイルしてそのままにしておくことができるということです。
すべてのアプリケーション ヘッダーを にインポートすると.pch
、それらのヘッダーのいずれかを変更するたびに再コンパイルする必要があり、すべての利点が無効になります。さらに悪いことに、これはプロジェクト内の他のすべてのファイルを再構築する必要があることを意味します.pch
。
プルする必要がある.pch
ヘッダーは、システム ヘッダーのように、ほとんど変更されないヘッダーだけです。
すべてのインポートを pch に追加すると、ビルドが遅くなる可能性があります。それは本当にプロジェクトに依存します。
100 個の .m ファイルがあり、そのうちの 1 つで AVFoundation を使用しているとします。AVFoundation ヘッダーを pch に追加すると、コンパイラはすべての .m ファイルに対してより大きな pch を処理する必要がありますが、その恩恵を受けるのはそのうちの 1 つだけです。これは遅いかもしれませんし、そうでないかもしれません。おそらく、簡単に測定するには小さすぎる違いです。
プロジェクト独自の .h ファイルを pch に追加することを考えている場合、.h ファイルのいずれかが変更されると Xcode がすべての .m ファイルを再コンパイルするため、ビルドが確実に遅くなります。
必要な場所にのみフレームワーク ヘッダーを含めるもう 1 つの理由は、ソース ファイルを別のプロジェクトにコピーする場合に、ソース ファイルを再利用しやすくするためです。