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 より前に導入