主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

错误

エラーのスローとメッセージの表示

説明

错误(味精はエラーをスローし,エラーメッセージを表示します。

错误(味精A1,…,一个は,MATLAB®関数sprintfで使用されるような書式変換文字を含むエラーメッセージを表示します。味精内の個々の変換文字は,値A1,…,一个の1つに変換されます。

错误(errID___は,例外発生時のエラー識別子を含みます。識別子により,エラーを区別し,MATLABでエラーが発生したときの動作を制御することができます。前述の構文のいずれかの入力引数を含めることができます。

错误(errorStructは,スカラー構造体のフィールドを使用してエラーをスローします。

错误(修正___は,例外の修正候補を提供します。前述の構文のいずれかの入力引数を含めることができます。

すべて折りたたむ

味精=错误发生。;错误(味精)
错误发生。

改行を含む書式付きエラーメッセージをスローします。エラーメッセージ内の特殊文字(\ nなど)をMATLABで変換する場合,错误に複数の入力引数を指定しなければなりません。エラーメッセージに,変数nのクラスに関する情報を含めます。

n = 7;如果~ ischar (n)错误(的错误。\nInput必须是char类型,而不是%s。类(n))结束
错误。输入必须是char类型,而不是double类型。

错误で入力引数を1つのみ使用した場合,MATLABは\ nを改行に変換しません。

如果~ ischar (n)错误(的错误。\nInput必须是char类型。'结束
错误。\nInput必须是char类型。

識別子を含むエラーをスローします。

如果~ ischar (n)错误(MyComponent”添加:incorrectType...的错误。\nInput必须是char类型,而不是%s。类(n))结束
错误。输入必须是char类型,而不是double类型。

MException.lastを使用して,最新のキャッチされていない例外を表示します。

异常= MException.last
exception = MException带有属性:identifier: 'MyComponent:incorrectType'消息:'错误。输入必须是char类型,而不是double类型。因为:{0x1 cell}栈:[0x1 struct]

メッセージと識別子のフィールドをもつ構造体を作成します。例を単純にするために、スタック フィールドは使用しません。

errorStruct。消息=“未找到数据文件。”;errorStruct。标识符=“MyFunction: fileNotFound”
errorStruct = message: '未找到数据文件。”标识符:“MyFunction: fileNotFound

エラーをスローします。

错误(errorStruct)
未找到数据文件。

入力引数を1つ必要とする関数你好を作成します。提案された入力引数“世界”をエラーメッセージに追加します。

函数你好(观众)如果aac = matlab.lang.correction.AppendArgumentsCorrection(“世界”的);错误(aac格式,“MATLAB: notEnoughInputs”“输入参数不足。”结束流(“你好,% s !\ n”观众)结束

引数なしで関数を呼び出します。

你好
使用hello出错(第4行)输入参数不足。你的意思是:>> hello(“世界”)

入力引数

すべて折りたたむ

エラーに関する情報。文字ベクトルまたは string スカラーとして指定します。このメッセージは、エラー メッセージとして表示されます。メッセージの書式を設定するには、\ t\ nなどのエスケープシーケンスを使用します。関数sprintfによってサポートされる% s% dなどの書式指定子も使用できます。A1,…,一个入力引数を介して変換指定子の値を指定します。詳細については,テキストの書式設定を参照してください。

メモ

エラーメッセージ内の特殊文字(\ t\ n% s% dなど)をMATLABで変換する場合,错误に複数の入力引数を指定しなければなりません。

例:“文件未找到”。

エラーの識別子。文字ベクトルまたは string スカラーとして指定します。エラー識別子を使用すると、エラー原因を特定したり、選択したエラーのサブセットをプログラム内で制御することができます。

エラー識別子には1つ以上の”“コンポーネントフィールドと1つの”“ニーモニックフィールドが含まれます。フィールドはコロンで区切られなければなりません。たとえば,コンポーネントフィールド组件およびニーモニックフィールド助记符をもつエラー識別子は“组件:助记符”として指定します。コンポーネントフィールドとニーモニックフィールドはそれぞれ,文字で始まらなければなりません。残りの文字には英数字(一个~ ~ Z, Z, 0 ~ 9)とアンダースコアを使用できます。errIDに空白文字を含めることはできません。詳細については,MExceptionを参照してください。

例:“MATLAB: singularMatrix”

例:MATLAB: narginchk: notEnoughInputs

味精内の変換指定子と置き換える値。文字ベクトル、字符串スカラー,または数値スカラーとして指定します。

エラーが報告する情報。スカラー構造体として指定します。この構造体は,少なくとも次のフィールドのいずれかを含まなければなりません。

消息

エラーメッセージ。詳細については,味精を参照してください。

标识符

エラー識別子。詳細については,errIDを参照してください。

堆栈

エラーのスタックフィールド。errorStruct堆栈フィールドが含まれる場合,错误はそのフィールドを使用してエラーのスタックフィールドを設定します。堆栈を指定する際は,絶対ファイル名と,スタックフレームで関数を入れ子にする関数の全体のシーケンスを使用します。この文字ベクトルは,dbstack(“-completenames”)で返されるものと同じです。

ヒント

  • エラーをスローすると,MATLABがそのエラーの情報を取得し,MExceptionクラスのオブジェクトであるデータ構造に格納します。この例外オブジェクト内の情報にはtry / catchを使用してアクセスできます。また,例外によりプログラムが終了し,制御をコマンドプロンプトに返した場合は,MException.lastを使用できます。

  • 试一试ブロック内でエラーが発生しても,MATLABはプログラムの実行を停止しません。この場合,MATLABは制御をブロックに渡します。

  • 错误へのすべての入力が空である場合,MATLABはエラーをスローしません。

拡張機能

R2006aより前に導入