次の方法で共有


論理エラーの検出

このトピックの内容は、次の製品に該当します。

エディション

Visual Basic

C#

F#

C++

Web Developer

Express

トピック該当なし トピック該当なし トピック該当なし

ネイティブのみ

トピック該当なし

Pro、Premium、Ultimate

トピック該当なし トピック該当なし トピック該当なし

ネイティブのみ

トピック該当なし

アサート ステートメントを使用すると、論理エラーを検出できます。 プログラムの論理に従えば true になるはずの条件にアサーションを設定しておきます。 論理エラーが発生しない場合、このアサーションは特に機能しません。

たとえば、容器内の気体分子をシミュレートすると想定し、変数 numMols で分子の総数を表すことにします。 この数値が 0 より小さくなることはあり得ないため、次のような MFC アサート ステートメントを挿入しておきます。

ASSERT(numMols >= 0);

または、次のように CRT アサーションを挿入することもできます。

_ASSERT(numMols >= 0);

プログラムが正しく動作していれば、これらのステートメントは何の処理も行いません。 しかし、論理エラーが発生して numMols が 0 未満になると、これらのステートメントはプログラムの実行を停止し、[アサートに失敗しました] ダイアログ ボックス を表示します。

参照

概念

結果のチェック

アサーション