Main Content

mustBeNonpositive

验证值为非正

说明

示例

如果 value 为正值,mustBeNonpositive(value) 将引发错误。大于零的值即为正值。此函数不返回值。

mustBeNonpositive 调用以下函数来确定输入是否不为正值:

支持的类:重载 mustBeNonpositive 调用的函数的所有数值类、logical 和 MATLAB® 类。

示例

全部折叠

使用 mustBeNonpositive 验证输入只包含非正值。

A = 1 < 10;
mustBeNonpositive(A)
Value must not be positive.

由于表达式 1 < 10 返回逻辑值 1,因此 A 值为正,并导致 mustBeNonpositive 引发错误。

该类将 Prop1 的值限制为非正值。

classdef MyClass
   properties
      Prop1 {mustBeNonpositive}
   end
end

创建一个对象,并向其属性赋值。

obj = MyClass;
obj.Prop1 = 10;
Error setting property 'Prop1' of class 'MyClass':
Value must not be positive.

当您向属性赋值时,MATLAB 会使用赋给属性的值调用 mustBeNonpositivemustBeNonpositive 将引发错误,因为值 10 为正。

此函数声明两个输入参量。输入 lower 不能为正数,输入 upper 必须为正数。

function r = mbNonpositive(lower,upper)
    arguments
        lower {mustBeNonpositive}
        upper {mustBePositive}
    end
    x = lower*pi:upper*pi;
    r = sin(x);
end

使用不满足 mustBeNonpositive 要求的 lower 值调用该函数会引发错误。

r = mbNonpositive(2,4);
Error using mbNonpositive
 r = mbNonpositive(2,4);
                   ↑
Invalid input argument at position 1. Value must not be positive.

输入参数

全部折叠

要验证的值,指定为标量或由以下任一类型的值组成的数组:

示例: value = -1 不会生成错误。

提示

  • mustBeNonpositive 用于属性和函数参量验证。

扩展功能

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2017a 中推出