/checked (C# コンパイラ オプション)
/checked オプションは、結果がデータ型の範囲外の値になる、および checked キーワードまたは unchecked キーワードのスコープ外にある整数算術演算ステートメントによって、実行時に例外を発生させるかどうかを指定します。
/checked[+ | -]
解説
checked キーワードまたは unchecked キーワードのスコープ内にある整数算術演算ステートメントは、/checked オプションの影響を受けません。
checked キーワードまたは unchecked キーワードのスコープ外にある整数算術演算ステートメントの結果がデータ型の範囲外の値になる場合、コンパイル時に /checked+ (/checked) オプションを指定すると、そのステートメントによって実行時に例外が発生します。コンパイル時に /checked- が使用された場合、そのステートメントによって実行時に例外は発生しません。
このオプションの既定値は /checked- です。/checked- を使用する場面としては、大規模なアプリケーションのビルドがあります。このようなアプリケーションのビルドでは、自動化ツールが使用されることがあり、そのツールで /checked が自動的に + に設定される場合があります。/checked- を指定することによって、ツールのグローバルな既定値をオーバーライドできます。
Visual Studio 開発環境でこのコンパイラ オプションを設定するには
プロジェクトの [プロパティ] ページを開きます。詳細については、「[ビルド] ページ (プロジェクト デザイナー) (C#)」を参照してください。
[ビルド] プロパティ ページをクリックします。
[詳細] をクリックします。
[演算のオーバーフローおよびアンダーフローのチェック] プロパティを変更します。
プログラムによってこのコンパイラ オプションにアクセスする方法については、「CheckForOverflowUnderflow」を参照してください。
使用例
次のコマンドにより、t2.cs がコンパイルされます。コマンドで /checked を使用すると、checked キーワードまたは unchecked キーワードのスコープ外にある、および結果がデータ型の範囲外の値になるファイル内の整数算術演算ステートメントによって、実行時に例外を発生させるように指定されます。
csc t2.cs /checked