主要内容

断言

如果条件为假,抛出错误

描述

例子

维护(气孔导度如果存在以下情况,则抛出错误气孔导度是假的。

例子

维护(气孔导度味精抛出错误并显示错误消息,味精,如果气孔导度是假的。

维护(气孔导度味精A1,…,一个显示包含格式转换字符(例如MATLAB中使用的字符)的错误消息®sprintf功能,如果气孔导度是假的。中的每个转换字符味精是否转换为其中一个值A1,…,一个

例子

维护(气孔导度errID味精抛出错误,显示错误消息,味精,并在异常上包含一个错误标识符,如果气孔导度是假的。标识符使您能够区分错误,并控制MATLAB遇到错误时发生的情况。

维护(气孔导度errID味精A1,…,一个在异常上包含错误标识符,并显示格式化的错误消息。

例子

全部折叠

断言值,x,大于指定的最小值。

minVal = 7;X = 26;断言(minVal < x)

表达式的计算结果为true,断言通过。

的值x在指定的最小值和最大值之间。

maxVal = 13;assert((minVal < x) && (x < maxVal))
断言失败。

表达式的计算结果为false。断言失败,MATLAB抛出一个错误。

断言两个数的乘积是一个双精度数。

A = 13;B =单(42);C = a*b;断言(isa (c,“双”),“产品不是类型double。”
产品不是双型的。

增强错误消息以显示的数据类型c

断言(isa (c,“双”),'积的类型是%s,而不是double。'类(c))
产品是单型,不是双型。

使用断言函数测试在正常代码执行中不应该发生的条件。如果系数为数值,则计算的根应为数值。使用指定系数和计算根的二次方程应该为零。

函数x = quadraticSolver(C) validateattributes(C,{“数字”},{“大小”,[1 3]}) a = C(1);b = C(2);c = c (3);X (1) = (-b+根号(b^2-4*a*c))/(2*a);X (2) = (-b-√(b^2-4*a*c))/(2*a);断言(isnumeric (x),“quadraticSolver: nonnumericRoots”...“计算根不是数字”) y1 = a*x(1)²+b*x(1)+c;Y2 = a*x(2)^2+b*x(2)+c;断言(y1 == 0,“quadraticSolver: root1Error”“第一个根错误”)维护(isequal (y2, 0),“quadraticSolver: root2Error”“第二个根错误”结束

输入参数

全部折叠

条件,指定为有效的MATLAB表达式。此表达式必须是逻辑的或可转换为逻辑的。如果气孔导度是假的,断言函数抛出错误。气孔导度可以包含关系操作符(例如<= =)和逻辑运算符(例如& &||,或).使用逻辑运算符而且而且创建复合表达式。MATLAB从左到右计算复合表达式,遵循运算符优先级规则。

例子:< 0

例子:存在(“myfunction.m”、“文件”)

有关断言失败的信息,指定为字符向量或字符串标量。此消息显示为错误消息。若要格式化消息,请使用转义序列,例如\ t\ n.类所支持的任何格式说明符金宝appsprintf函数,例如% s% d.方法指定转换说明符的值A1,…,一个输入参数。有关更多信息,请参见格式化文本

请注意

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

例子:“断言条件失败。”

数字、字符或字符串数组。中的转换说明符对应和替换的值味精

断言失败的标识符,指定为字符向量或字符串标量。使用标识符来帮助识别错误的来源或控制程序中选定的错误子集。

错误标识符包括一个或多个组件字段和助记符字段。字段之间必须用冒号分隔。例如,带有组件字段的错误标识符组件还有一个助记域助记符指定为“组件:助记符”.组件和助记符字段都必须以字母开头。其余字符可以是字母数字(A-Z, A-Z, 0-9)和下划线。中任何地方都不能出现空白字符errID.有关更多信息,请参见MException

例子:“MATLAB: singularMatrix”

例子:MATLAB: narginchk: notEnoughInputs

提示

  • 的对象的数据结构中存储有关错误的信息MException类。您可以使用异常对象中的try / catch.或者,如果您的程序由于异常而终止,并将控制返回到命令提示符,您可以使用MException.last

  • 类中发生断言失败试一试块,MATLAB不停止执行程序。在这种情况下,MATLAB将控制传递给块。

扩展功能

版本历史

在R2007a中引入

另请参阅

|