/Zo (最適化されたデバッグ機能の強化)
非デバッグ ビルドで最適化されたコードに関する拡張デバッグ情報を生成します。
/Zo[-]
解説
/Zo コンパイラ スイッチは、最適化されたコードに関する拡張デバッグ情報を生成します。 最適化では、ローカル変数にレジスターを使い、コードを並べ替え、ループをベクトル化し、関数呼び出しをインライン化することがあります。 これらの最適化により、ソース コードとコンパイル済みのオブジェクト コードの関係が不明瞭になる場合があります。 /Zo スイッチは、ローカル変数とインライン関数に関する追加のデバッグ情報とプロファイル情報を生成するようコンパイラに指示します。 このスイッチを使用すると、最適化されたコードを Visual Studio デバッガーでステップ実行するときに [自動変数]、[ローカル]、[ウォッチ] ウィンドウに変数を表示します。 また、スタック トレースを有効にして、WinDBG デバッガーでインライン関数を表示します。 最適化が無効になっているデバッグ ビルド (/Od) には、/Zo の指定時に生成される追加のデバッグ情報は不要です。 /Zo スイッチは、最適化をオンにしてリリースの構成をデバッグするのに使用します。 最適化スイッチの詳細については、「/O オプション (コードの最適化)」を参照してください。 /Zo を使うと .PDB ファイルのサイズが大きくなることがあるので、Visual Studio 2013 では既定では無効になっています。 このコンパイラ オプションを明示的に無効にする場合に /Zo- を指定します。
/Zo スイッチにより生成される拡張デバッグ情報を活用する Visual Studio 2013 デバッガーは、ネイティブのエディット コンティニュとは互換性がありません。 デバッガー オプションでネイティブ エディット コンティニュを有効にすると、Visual Studio 2013 は別のデバッグ エンジンを使い、/Zo スイッチにより生成される拡張デバッグ情報は無視されます。
/Zo スイッチは、Visual Studio 2013 更新プログラム 3 で使用可能で、ドキュメントに記載されなくなった /d2Zi+ スイッチと置き換わるものです。 代わりに /Zo を使うことをお勧めします。
Visual Studio で /Zo コンパイラ オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。 詳細については、「方法 : プロジェクト プロパティ ページを開く」を参照してください。
[構成プロパティ]、[C/C++] フォルダーを選択します。
[コマンド ライン] プロパティ ページを選択します。
[追加オプション] プロパティを変更して /Zo を組み込んでから、[OK] をクリックします。
このコンパイラ オプションをコードから設定するには
- 「AdditionalOptions」を参照してください。