Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

mustBeNonnegative

验证值为非负值

说明

示例

如果 value 是负值,mustBeNonnegative(value) 将引发错误。此函数不返回值。

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

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

示例

全部折叠

使用 mustBeNonnegative 验证输入只包含非负值。

randn 函数用于创建正态分布的随机数。

A = randn(1,5);

验证随机数为非负值。

mustBeNonnegative(A)
Value must be nonnegative.

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

classdef MyClass
   properties
      Prop1 {mustBeNonnegative}
   end
end

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

obj = MyClass;
obj.Prop1 = -10;
Error setting property 'Prop1' of class 'MyClass'. Value must be nonnegative.

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

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

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

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

r = mbNonnegative(-12,-4);
Error using mbNonnegative
 r = mbNonnegative(-12,-4);
                       ↑
Invalid input argument at position 2. Value must be nonnegative.

输入参数

全部折叠

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

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

提示

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

扩展功能

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

版本历史记录

在 R2017a 中推出