comment (C/C++)

オブジェクト ファイルまたは実行可能ファイルにコメントのレコードを配置します。

#pragma comment( comment-type [,"commentstring"] )

解説

コメント型が レコード型の注釈を指定する定義済み識別子次の 1 つです。省略可能な commentstring はコメントの型に追加情報を提供するリテラル文字列です。commentstring がリテラル文字列であるためリテラル文字列のすべての規則にはエスケープ文字を使用して埋め込まれた引用符 () 連結と一致します。

  • コンパイラ
    オブジェクト ファイルにコンパイラの名前およびバージョン番号を配置します。このコメントのレコードはリンカーによって無視されます。このレコード型の commentstring のパラメーターを指定するとコンパイラは警告を生成します。

  • exestr
    オブジェクト ファイルに commentstring を配置します。リンク時にこの文字列は実行可能ファイルに格納されます。文字列はメモリに実行可能ファイルが読み込まれるときに読み込まれる ; ただしファイルを印刷できる検索文字列をプログラムで検索できます。このコメントのレコード型の 1 とおりの使用は実行可能ファイルのバージョン番号または同様の情報を埋め込むことです。

    exestr の使用は推奨されていません。将来のリリースでは削除されます ; リンカーがコメントのレコードを処理しません。

  • ライブラリ
    オブジェクト ファイルライブラリのレコードを検索します。このコメントの型はライブラリの名前 (およびパス) を含む commentstring のパラメーターとともに検索する伴われなければ必要があります。ライブラリ名はオブジェクト ファイルの既定のライブラリを検索するレコードに従って ; リンカーはこのライブラリをライブラリが /nodefaultlib を指定しない場合コマンド ラインでという名前のように検索します。同じソース ファイル内の複数のライブラリ検索のレコードを配置できます ; 各レコードにはソース ファイルにある同じ順序でオブジェクト ファイルに表示されます。

既定のライブラリおよび追加されたライブラリの順序が重要な場合は[/Zl](f1tbxcxh\(v=vs.110\).md) スイッチでコンパイルされた既定のライブラリ名のオブジェクト モジュールに取り込まれません。2 番目のコメント プラグマが追加されたライブラリの後に既定のライブラリ名を挿入するために使用できます。これらのプラグマで示したライブラリはソース・コードと同じ順序でオブジェクト モジュールに表示されます。
  • リンカー
    オブジェクト ファイルに リンカー オプション を配置します。コマンド ラインに渡したり開発環境で指定する代わりにリンカー オプションを指定する場合はこのコメント型を使用できます。たとえばシンボルの例を実行するには/include オプションを指定できます :

    #pragma comment(linker, "/include:__mySymbol")

次の *コメント* ( *型の* ) リンカー オプションはリンカーの識別子があります :

  - [/DEFAULTLIB](229a6ysd\(v=vs.110\).md)

  - [/EXPORT](7k30y2k5\(v=vs.110\).md)

  - [/INCLUDE](2s3hwbhs\(v=vs.110\).md)

  - [/MANIFESTDEPENDENCY](ew0y5khy\(v=vs.110\).md)

  - [/MERGE](wxz26dz2\(v=vs.110\).md)

  - [/SECTION](sf9b18xk\(v=vs.110\).md)
  • ユーザー
    汎用オブジェクト ファイルにコメントを配置します。commentstring のパラメーターはコメントのテキストが含まれます。このコメントのレコードはリンカーによって無視されます。

リンク間に次のプラグマとリンカーが EMAPI.LIB のライブラリを検索します。次にリンカーが現在の作業ディレクトリに環境変数 LIB で指定されたパスで検索します。

#pragma comment( lib, "emapi" )

次のプラグマとコンパイラはオブジェクト ファイルにコンパイラの名前およびバージョン番号を格納します :

#pragma comment( compiler )

[!メモ]

commentstring のパラメーターを受け取るコメントとしてマクロがリテラル文字列に配置した場合リテラル文字列を使用するすべての場所でマクロを使用します。またリテラル文字列に展開されるマクロおよびリテラル文字列の組み合わせを連結できます。たとえば次のステートメントは使用できます。:

#pragma comment( user, "Compiled on " __DATE__ " at " __TIME__ ) 

参照

関連項目

プラグマのディレクティブと __Pragma のキーワード