参量验证函数
MATLAB 定义了一些用于参量验证的函数。这些函数支持验证的常用模式,并提供描述性错误消息。下表对 MATLAB® 验证函数进行了分类并描述了它们的用法。
数值属性
名称 | 含义 | 对输入调用的函数 |
---|---|---|
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
与其他值的比较
名称 | 含义 | 对输入调用的函数 |
---|---|---|
|
| |
|
| |
|
| |
|
|
数据类型
名称 | 含义 | 对输入调用的函数 |
---|---|---|
|
| 使用类定义关系 |
|
| |
|
| |
|
| |
|
|
大小
名称 | 含义 | 对输入调用的函数 |
---|---|---|
|
| |
| value 必须为标量或为空。 | |
| value 必须为向量。 |
成员关系和范围
名称 | 含义 | 对输入调用的函数 |
---|---|---|
|
| |
| value 必须在范围内。 |
文本
名称 | 含义 | 对输入调用的函数 |
---|---|---|
|
| |
| path 必须指向文件夹。 | |
|
| 不适用 |
|
| 不适用 |
|
| 不适用 |
| varname 必须为有效的变量名称。 |
定义验证函数
验证函数是 MATLAB 函数,用于检查传递给函数或属性的值的要求。验证函数确定何时引发错误以及显示什么错误消息。
用于验证的函数具有以下设计元素:
验证函数不返回输出,也不修改程序状态。其唯一目的是检查输入值的有效性。
验证函数必须接受作为输入进行验证的值。如果函数接受多个参量,则第一个输入是要验证的值。
验证函数仅作用于输入。不使用任何其他值。
如果验证失败,验证函数将引发错误。
当使用 MATLAB 验证函数无法提供所需的特定验证时,您可以创建自己的验证函数,这非常有用。您可以在函数文件中将验证函数创建为局部函数,或将其放在 MATLAB 路径中。为了避免错误消息混杂,请不要在用户定义的验证函数中使用函数参量验证。
例如,mustBeRealUpperTriangular
函数将输入限制为实数值上三角矩阵。验证函数使用 istriu
和 isreal
函数。
function mustBeRealUpperTriangular(a) if ~(istriu(a) && isreal(a)) eidType = 'mustBeRealUpperTriangular:notRealUpperTriangular'; msgType = 'Input must be a real-valued, upper triangular matrix.'; error(eidType,msgType) end end
如果参量的类型不正确,函数将引发错误。
a = [1 2 3+2i; 0 2 3; 0 0 1]; mustBeRealUpperTriangular(a)
Input must be a real-valued, upper triangular matrix.