Main Content

mxAssert (C)

デバッグ目的のためのアサーション値の確認

C 構文

#include "matrix.h"
void mxAssert(int expr, char *error_message);

引数

expr

アサーション値

error_message

アサーションに失敗した理由の説明

説明

ANSI® C の assert マクロと同様に、mxAssert はアサーションの値を確認し、アサーションが成り立つ場合にのみ実行を続行します。expr が logical 1 (true) に評価される場合、mxAssert は何も行いません。expr が logical 0 (false) に評価される場合は、mxAssert によって MEX ファイルが終了し、MATLAB® コマンド ウィンドウにエラーが出力されます。エラーには失敗したアサーションの式、アサーションの失敗が起きたファイル名と行番号および error_message のテキストが含まれます。error_message を使用すると、アサーションに失敗した理由のより詳しい説明を指定できます。失敗したアサーション メッセージの後に説明を付けない場合は、空の文字列を使用します。

mex スクリプトは、最適化された MEX 関数をビルドする際にこれらのアサーションをオフにするため、アサーションはデバッグの目的のみに使用してください。mxAssert を使用するには、mex -g filename の構文を使用して MEX ファイルをビルドします。

アサーションは、ロジック内部の一貫性を保持するための手段です。アサーションを使用して、作成したコードの誤りを見つけ、論理エラーが発生する前にそのエラーを伝播させないようにします。コードの使用者が誤ってコードを使用することを防ぐ目的ではアサーションを使用しないでください。

アサーションは、C プリプロセッサによってコードから取り出すことができます。これらのチェックは、開発中に使用して、コードが適切に機能したら削除することができます。開発中にアサーションをトラブルシューティングに使用すると、最終製品の速度が低下しません。

バージョン履歴

R2006a より前に導入