最近VisualStudio2010に切り替えましたが、boost
ライブラリを使用しているときにIntellisenseが表示されるのに30分もかからないようにするために、Microsoftの提案ではプリコンパイル済みヘッダーを使用しているようです。
以前にそれらを使用したことがないことを除いて(Ugly ATL Wizards(TM)によって強制された場合を除く)、私はそれらがどのように機能するかを調べるために周りを検索しました。
基本的に、BigCentralizedのstdafx.h
アプローチは明らかに間違っているようです。すべてのソースに大量のヘッダーファイルを(安価にでも)インクルードしたくありません。私はWindowsライブラリを使用していないので(C ++ / CLIの上位レベルのラッパーを作成し、外の世界との通信に.NETを使用します)、「変更されない巨大なヘッダーのトラック全体」を持っていません。ちょうどboost
そして標準ライブラリヘッダーが散らばっています。
この問題には興味深いアプローチがありますが、これを機能させる方法を完全に理解することはできません。各ソースファイルは2回コンパイルする必要があるようです(間違っている場合は修正してください)。1回は/ Ycを使用し、もう1回は/Yuを使用します。これにより、ビルドシステムを手動で調整する必要がある開発者に負担がかかります。
「ソースファイルごとに1つのプリコンパイル済みヘッダーを自動的に生成する」トリック、または少なくともいくつかの「ベストプラクティス」を見つけたいと思っていましたが、ほとんどの人は世界をに含めることに満足しているようですstdafx.h
。
ソースファイルごとにプリコンパイル済みヘッダーを使用するために利用できるオプションは何ですか?ビルド時間は(急上昇しない限り)あまり気にしません。インテリセンスを高速に動作させたいだけです。