Visual Studio 2017 を使用することをお勧めします

アルファベット順のコンパイラ オプション

 

公開日: 2016年10月

Visual Studio 2017 RC の最新のドキュメントの詳細については、Visual Studio 2017 RC ドキュメントをご参照ください。

次の表は、コンパイラ オプションをアルファベット順の一覧にしたものです。 カテゴリ別の一覧については、「カテゴリ別のコンパイラ オプション」を参照してください。

オプション目的
@応答ファイルを指定します。
/?コンパイラ オプションのリストを出力します。
/AI#using ディレクティブに渡されたファイル参照を解決するために検索するディレクトリを指定します。
/analyzeコード分析を有効にします。
/archコード生成のアーキテクチャを指定します。
/bigobj.obj ファイル内のアドレス指定可能なセクションの数を増やします。
/Cプリプロセス時にコメントを保持します。
/cリンクを行わないでコンパイルします。
/cgthreads最適化およびコード生成に使用する cl.exe スレッド数を指定します。
/clr共通言語ランタイムで実行する出力ファイルを作成します。
/D定数とマクロを定義します。
/docドキュメント コメントを XML ファイルに出力します。
/Eプリプロセッサ出力を標準出力にコピーします。
/EH例外処理のモデルを指定します。
/EPプリプロセッサ出力を標準出力にコピーします。
/errorReport内部コンパイラ エラー (ICE) 情報を Visual C++ チームに直接報告できます。
/Fスタック サイズを設定します。
/favor特定の x64 アーキテクチャ、または AMD64 アーキテクチャおよび Extended Memory 64 Technology (EM64T) アーキテクチャの両方のマイクロアーキテクチャの仕様に合わせて最適化されるコードを作成します。
/FAリスティング ファイルを作成します。
/Faリスティング ファイル名を設定します。
/FC診断テキストで cl.exe に渡されるソース コード ファイルの完全パスを表示します。
/Fdプログラム データベース ファイルの名前を変更します。
/Fe実行可能ファイルの名前を変更します。
/FI指定したインクルード ファイルをプリプロセスします。
/Fiプリプロセス済みの出力ファイル名を設定します。
/Fmマップファイルを作成します。
/Foオブジェクト ファイルを作成します。
/fp浮動小数点の動作を指定します。
/Fpプリコンパイル済みヘッダー ファイルの名前を指定します。
/FR

 /Fr
ブラウザー ファイルを生成します。/Fr は使用されなくなりました。
/FSプログラム データベース (PDB) ファイルへの書き込みを MSPDBSRV.EXE によりシリアル化します。
/FU#using ディレクティブに渡された場合と同じ方法でファイル名の使用を強制します。
/Fx挿入されたコードをソース ファイルとマージします。
/GAWindows アプリケーション用にコードを最適化します。
/Gd__cdecl 呼び出し規約を使用します (x86 のみ)。
/Ge使用しないでください。 スタック プローブをアクティブにします。
/GF文字列プールを有効にします。
/GHフック関数 _pexit を呼び出します。
/Ghフック関数 _penter を呼び出します。
/GLプログラム全体の最適化を有効にします。
/Gm簡易リビルドを有効にします。
/GRランタイム型情報 (RTTI: Run-Time Type Information) を有効にします。
/Gr__fastcall 呼び出し規約を使用します (x86 のみ)。
/GSバッファーのセキュリティをチェックします。
/Gsスタック プローブを制御します。
/GT静的スレッド ローカル ストレージを使用して割り当てられたデータに対して、ファイバー保護をサポートします。
/guard:cf制御フロー ガードのセキュリティ チェックを追加します。
/Gv__vectorcall 呼び出し規約を使用します。 (x86 と x64 のみ)。
/Gwプログラム全体のグローバル データの最適化を有効にします。
/GX使用しないでください。 同期例外処理を有効にします。 代わりに /EH を使用してください。
/Gy関数レベルのリンクを有効にします。
/GZ使用しないでください。/RTC1 と同じです。
/Gz__stdcall 呼び出し規約を使用します (x86 のみ)。
/H使用しないでください。 外部名 (パブリック名) の長さを制限します。
/HELPコンパイラ オプションのリストを出力します。
/homeparams関数の実行に入ったときに、レジスタで渡されたパラメーターを、強制的にスタック内のその場所に書き込みます。 これは、x64 コンパイラ (ネイティブ コンパイルおよびクロス コンパイル) だけで使用されるコンパイラ オプションです。
/hotpatchホットパッチ可能なイメージを作成します。
/Iディレクトリ内でインクルード ファイルを検索します。
/J既定の char 型を変更します。
/kernelコンパイラとリンカーは、Windows カーネルで実行可能なバイナリを作成します。
/LDダイナミック リンク ライブラリを作成します。
/LDdデバッグ バージョンのダイナミック リンク ライブラリを作成します。
/link指定したオプションを LINK に渡します。
/LNMSIL モジュールを作成します。
/MDMSVCRT.lib を使用して、マルチスレッド DLL を作成します。
/MDdMSVCRTD.lib を使用して、デバッグ バージョンのマルチスレッド DLL を作成します。
/MP複数のプロセスを使用して、複数のソース ファイルをコンパイルします。
/MTLIBCMT.lib を使用して、マルチスレッド実行可能ファイルを作成します。
/MTdLIBCMTD.lib を使用して、デバッグ バージョンのマルチスレッド実行可能ファイルを作成します。
/nologo著作権情報を表示しません。
/O1コードを最小化します。
/O2コードを最速化します。
/Ob関数のインライン展開を制御します。
/Od最適化を無効にします。
/Og使用しないでください。 グローバル最適化を使用します。
/Oi組み込み関数を生成します。
/openmpソース コードで #pragma omp を有効にします。
/Os実行可能ファイルで、サイズの小ささを優先させます。
/Ot実行可能ファイルで、実行速度を優先させます。
/Ox最大限の最適化 (/Ob2 ~ /Gs) を行います。
/Oyフレーム ポインターを省略します (x86 のみ)。
/Pプリプロセッサ出力をファイルに書き込みます。
/Qfast_transcendentals高速超越関数を生成します。
/QIfist使用しないでください。 浮動小数点型から整数型への変換が必要なときに、_ftol を呼び出しません (x86 のみ)。
/Qimprecise_fwaitsfwait ブロックの中にある try コマンドを削除します。
/Qpar (自動並行化)#pragma loop() ディレクティブでマークされているループの自動並列化を有効にします。
/Qsafe_fp_loads浮動小数点値の整数移動命令を使用し、特定の浮動小数点読み込み最適化を無効にします。
/Qvec-report (自動ベクター化レポート作成レベル)自動ベクター化のレポート レベルを有効にします。
/RTCランタイム エラー チェックを有効にします。
/sdl追加のセキュリティ機能と警告を有効にします。
/showIncludesコンパイル時にインクルード ファイルの一覧を表示します。
/Tc

 /TC
C ソース ファイルを指定します。
/Tp

 /TP
C++ ソース ファイルを指定します。
/U1 つの定義済みマクロを削除します。
/uすべての定義済みマクロを削除します。
/V使用しないでください。 .obj ファイル バージョン文字列を設定します。
/vd隠し vtordisp クラス メンバーの無効と有効を切り替えます。
/vmbメンバーへのポインターに対して、最適なクラスを使用します。
/vmgメンバーへのポインターに対して、ジェネリック クラスを使用します。
/vmm多重継承を宣言します。
/vms単一継承を宣言します。
/vmv仮想継承を宣言します。
/volatilevolatile キーワードの解釈方法を選択します。
/wすべての警告を無効にします。
/W0、/W1、/W2、/W3、/W4出力する警告レベルを設定します。
/w1、/w2、/w3、/w4指定した警告の警告レベルを設定します。
/Wall既定で無効にされた警告も含めてすべての警告を有効にします。
/wd指定した警告を無効にします。
/we指定した警告をエラーとして扱います。
/WLコマンド ラインから C++ ソース コードをコンパイルするときに、エラー メッセージと警告メッセージの 1 行診断を有効にします。
/wo指定した警告を 1 回だけ表示します。
/Wp64互換性のために残されています。 64 ビット移植性の問題を検出します。
/Wv指定したコンパイラ バージョンの後に、導入された警告は表示されません。
/WXすべての警告をエラーとして扱います。
/X標準のインクルード ディレクトリを無視します。
/Y-現在のビルドで、他のすべてのプリコンパイル済みヘッダー コンパイラ オプションを無視します。
/Ycプリコンパイル済みヘッダー ファイルを作成します。
/Yd使用しないでください。 すべてのオブジェクト ファイルに、詳細なデバッグ情報を取り込みます。 代わりに /Zi を使用してください。
/Ylデバッグ ライブラリの作成時に PCH の参照を挿入します。
/Yuビルド時にプリコンパイル済みヘッダー ファイルを使用します。
/Z7C 7.0 互換のデバッグ情報を生成します。
/Za言語拡張機能を無効にします。
/Zc/Ze /Za、/Ze (言語拡張機能の無効化)での標準動作を指定します。
/Ze使用しないでください。 言語拡張機能を有効にします。
/ZgVisual C++ 2015 では削除されています。 関数プロトタイプを生成します。
/ZIエディット コンティニュと互換性のあるプログラム データベースにデバッグ情報を含めます。
/Zi詳細なデバッグ情報を生成します。
/Zl.obj ファイルから既定のライブラリ名を削除します (x86 のみ)。
/Zmプリコンパイル済みヘッダーのメモリ割り当て制限を指定します。
/Zp構造体メンバーをパックします。
/Zs構文だけをチェックします。
/ZWWindows ランタイムで実行する出力ファイルを生成します。

C/C++ ビルドのリファレンス
コンパイラ オプション
コンパイラ オプションの設定

表示: