3

ライブラリをビルドするときではなく、主にアプリケーション レベルのインポートについて言及しています。

4

2 に答える 2

5

このファイルのポイントは、.pch一度プリコンパイルしてそのままにしておくことができるということです。

すべてのアプリケーション ヘッダーを にインポートすると.pch、それらのヘッダーのいずれかを変更するたびに再コンパイルする必要があり、すべての利点が無効になります。さらに悪いことに、これはプロジェクト内の他のすべてのファイルを再構築する必要があることを意味します.pch

プルする必要がある.pchヘッダーは、システム ヘッダーのように、ほとんど変更されないヘッダーだけです。

于 2013-02-05T19:18:16.173 に答える
1

すべてのインポートを pch に追加すると、ビルドが遅くなる可能性があります。それは本当にプロジェクトに依存します。

100 個の .m ファイルがあり、そのうちの 1 つで AVFoundation を使用しているとします。AVFoundation ヘッダーを pch に追加すると、コンパイラはすべての .m ファイルに対してより大きな pch を処理する必要がありますが、その恩恵を受けるのはそのうちの 1 つだけです。これは遅いかもしれませんし、そうでないかもしれません。おそらく、簡単に測定するには小さすぎる違いです。

プロジェクト独自の .h ファイルを pch に追加することを考えている場合、.h ファイルのいずれかが変更されると Xcode がすべての .m ファイルを再コンパイルするため、ビルドが確実に遅くなります。

必要な場所にのみフレームワーク ヘッダーを含めるもう 1 つの理由は、ソース ファイルを別のプロジェクトにコピーする場合に、ソース ファイルを再利用しやすくするためです。

于 2013-02-05T19:18:11.400 に答える