主要内容

错误

把错误并显示消息

描述

例子

错误(味精)抛出一个错误并显示一条错误消息。

错误(味精,A1,…,一个)显示一个错误消息,其中包含格式转换角色,比如使用MATLAB®sprintf函数。每个转换角色味精转化为一个值A1,…,一个

错误(errID,___)包括一个错误标识符的例外。标识符可以区分错误和控制MATLAB遇到错误时发生了什么。您可以包括任何输入参数在前面的语法。

例子

错误(errorStruct)抛出一个错误使用标量结构中的字段。

例子

错误(修正,___)提供了一个建议修复异常。您可以包括任何输入参数在前面的语法。

例子

全部折叠

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

扔一个格式化的换行错误消息。您必须指定多个输入参数错误如果你想让MATLAB转换特殊字符(如\ n)错误消息。包括信息的类变量n的错误消息。

n = 7;如果~ ischar (n)错误(的错误。\ nInput必须是一个字符,而不是% s。类(n))结束
错误。输入必须是一个字符,而不是翻倍。

如果你只使用一个输入参数错误,然后用MATLAB不转换\ n一个换行符。

如果~ ischar (n)错误(的错误。\ nInput必须是一个char。)结束
错误。\ nInput必须是一个char。

抛出一个错误标识符。

如果~ ischar (n)错误(MyComponent”添加:incorrectType,的错误。\ nInput必须是一个字符,而不是% s。类(n))结束
错误。输入必须是一个字符,而不是翻倍。

使用MException.last查看最后一个未捕获的异常。

异常= MException.last
MyComponent异常= MException属性:标识符:“添加:incorrectType”信息:错误。输入必须是一个字符,而不是翻倍。因为:{0 x1细胞}栈:[0 x1 struct]

创建结构消息和标识符字段。为了使这个示例尽量简单,不要使用堆栈。

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

抛出的错误。

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

创建一个函数你好这需要一个输入参数。建议添加一个输入参数“世界”错误消息。

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

调用函数没有参数。

你好
输入参数错误使用你好不够的。你的意思是:> >你好(“世界”)

输入参数

全部折叠

关于错误的信息,指定为一个文本包含格式规范的标量。这个信息显示错误消息。消息的格式,使用转义序列,如\ t\ n。你也可以使用任何支持的格式说明符万博1manbetxsprintf功能,如% s% d。说明符通过指定值的转换A1,…,一个输入参数。有关更多信息,请参见格式化文本

请注意

您必须指定多个输入参数错误如果你想让MATLAB转换特殊字符(如\ t,\ n,% s,% d)错误消息。

例子:“文件未找到”。

错误的标识符指定为一个文本标量包含组件和助记符字段。使用错误的标识符来帮助识别误差的来源或控制的所选子集程序中的错误。

包含一个或多个错误标识符组件字段和一个助记符字段。字段必须用冒号分开。例如,一个错误标识符与组件组件和一个助记符字段助记符被指定为“组件:助记符”。每个组件和助记符字段必须以字母开头。剩余的字符可以# (a - z、a - z 0 - 9)和下划线。不可以出现任何空白字符errID。有关更多信息,请参见MException

例子:“MATLAB: singularMatrix”

例子:MATLAB: narginchk: notEnoughInputs

转换说明符的值替换味精指定为一个特征向量,字符串标量,或数字标量。

错误报告信息,指定为一个标量结构。这些字段的结构必须包含至少一个。

消息

错误消息。有关更多信息,请参见味精

标识符

错误的标识符。有关更多信息,请参见errID

堆栈

Stack字段的错误。当errorStruct包括一个堆栈领域,错误用它来设置堆栈字段的错误。当你指定堆栈,使用绝对文件名和整个巢穴的函数序列函数在堆栈帧。这个角色向量返回的一个是一样的dbstack (“-completenames”)

提示

  • 当你抛出一个错误,MATLAB捕获信息并将其存储在一个对象的数据结构MException类。您可以访问异常对象使用的信息try / catch。或者,如果您的程序终止,因为异常并将控制返回到命令提示符,您可以使用MException.last

  • MATLAB不停止执行程序中如果出现错误试一试块。在这种情况下,MATLAB控制块。

  • 如果所有的输入错误是空的,MATLAB不抛出一个错误。

扩展功能

版本历史

之前介绍过的R2006a