このスイッチは、IFC 参照マップ ファイルを検索する場所をコンパイラに指示します。このファイルは、名前付きモジュールとヘッダー ユニットへの参照を対応する IFC (.ifc) ファイルにマップします。
構文
/ifcMapfilename
注釈
filename引数は、IFC 参照マップ ファイルを指定します。 コンパイラの作業ディレクトリに対する相対パスまたは絶対パスを指定できます。
コンパイラには、複数の /ifcMap 引数を指定できます。
IFC 参照マップ ファイル形式は、 TOML ファイル形式のサブセットです。 IFC 参照マップ ファイルには、 [[module]] と [[header-unit]] の参照の組み合わせを含めることができます。
構文エラーまたは認識できないテーブル名は、コンパイラ エラー C7696 (TOML 解析エラー) になります。
名前付きモジュールをマップする
名前付きモジュールの IFC 参照マップ ファイルの形式は次のとおりです。
# Using literal strings
[[module]]
name = 'M'
ifc = 'C:\modules\M.ifc'
# Using basic strings
[[module]]
name = "N"
ifc = "C:\\modules\\N.ifc"
この IFC 参照マップ ファイルは、名前付きモジュール 'M' と 'N' をそれぞれの IFC ファイルにマップします。 同等の /reference は次のとおりです。
/reference M=C:\modules\M.ifc /reference N=C:\modules\N.ifc
name フィールドで有効なモジュール名の種類の詳細については、/reference remarksを参照してください。
ヘッダー ユニットのマップ
ヘッダー ユニットの IFC 参照マップ ファイルの形式は次のとおりです。
# Using literal strings
[[header-unit]]
name = ['quote', 'my-utility.h']
ifc = 'C:\header-units\my-utility.h.ifc'
[[header-unit]]
name = ['angle', 'vector']
ifc = 'C:\header-units\vector.ifc'
# Using basic strings
[[header-unit]]
name = ["quote", "my-engine.h"]
ifc = "C:\\header-units\\my-engine.h.ifc"
[[header-unit]]
name = ["angle", "algorithm"]
ifc = "C:\\header-units\\algorithm.ifc"
この IFC 参照マップ ファイルは、 "my-utility.h" を C:\header-units\my-utility.h.ifcにマップし、 <vector> を C:\header-units\vector.ifcにマップします。 同等の /headerUnit は次のとおりです。
/headerUnit:quote my-utility=C:\header-units\my-utility.h.ifc /headerUnit:angle vector=C:\header-units\vector.ifc /headerUnit:quote my-engine.h=C:\header-units\my-engine.h.ifc /headerUnit:angle algorithm=C:\header-units\algorithm.ifc
IFC 参照マップ ファイルで[[header-unit]]が指定されている場合、コンパイラは、/Zc:preprocessorが使用されるときに暗黙的に有効になるのと同様に、/headerUnitを暗黙的に有効にします。
angleおよびquote参照メソッドの動作の詳細については、「/headerUnit 解説」を参照してください。
こちらも参照ください
C++ のモジュールの概要
チュートリアル: Visual C++ プロジェクトでのヘッダー ユニットのビルドとインポート
コマンド ラインからの MSVC での C++ モジュールの使用