次の方法で共有


論理エラーの検出

更新 : 2007 年 11 月

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

Edition

Visual Basic

C#

C++

Web Developer

Express

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

ネイティブのみ

トピック該当なし

Standard

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

ネイティブのみ

トピック該当なし

Pro/Team

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

ネイティブのみ

トピック該当なし

表の凡例 :

トピック該当

対象

トピック該当なし

該当なし

トピックは該当しますが、コマンドは既定では非表示です

既定で非表示のコマンド

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

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

ASSERT(numMols >= 0);

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

_ASSERT(numMols >= 0);

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

参照

概念

結果のチェック

アサーション