2012年10月4日木曜日

Visual C++ インクルードディレクトリを相対パスで

 Visual C++ 2008では、追加のインクルードディレクトリを設定する方法には2通りある。
 1つは全てのプロジェクトに対して設定する方法で、「ツール→オプション」から「プロジェクト及びソリューション→VC++ディレクトリ」、そして右上のプルダウンメニューから「インクルード ファイル」を選択し、リストにパスを追加する。
 2つ目は個々のプロジェクトに対して設定する方法で、プロジェクト→(プロジェクト名)のプロパティ」から「構成プロパティ→C/C++→全般」にある「追加のインクルードディレクトリ」に設定するものだ。

 さて、ここからがメモなのだが、2つ目の「追加のインクルードディレクトリ」は相対パスが設定可能らしい。「.」で「VC++ Project」ファイルのあるディレクトリを指すので、そこからの相対パスを設定してやる。

 プロジェクトを複数台のPCに同期していたため、PCごとに絶対パスが異なるという状況にあり、今までは「VC++ディレクトリ」の方の設定でパスをはることで対応していた。しかし同名のヘッダが存在すると優先順位の高いもの(リストの昇順)が呼ばれてしまうため問題となる。開発中などで唯一性が保証できないヘッダにパスをはる際にはプロジェクトのプロパティで相対パスをはる方法が良さそうだ。

0 件のコメント:

コメントを投稿