mustBeNegative

Подтвердите, что значение отрицательно, или выдайте ошибку

Синтаксис

Описание

пример

mustBeNegative(value) выдает ошибку если value не отрицательно. Значение отрицательно, если оно меньше нуля. Эта функция не возвращает значение.

mustBeNegative принимает пользовательские объекты, если класс объекта реализует эти методы:

Эта функция игнорирует входные параметры, которые являются пустыми значениями. Поэтому никакая ошибка не выдана, когда значение аргумента свойства или аргумента функции пусто.

Примеры

свернуть все

Используйте mustBeNegative чтобы подтвердить это, вход содержит только отрицательные величины.

rand функция создает равномерно распределенные случайные числа в интервале (0,1). Протестируйте массив после вычитания, чтобы подтвердить это все, значения отрицательны. В противном случае mustBeNegative выдает ошибку.

A = rand(1,5) - 0.75;
mustBeNegative(A)
Error using mustBeNegative (line 14)
Value must be negative.

Этот класс ограничивает значение Prop1 к отрицательным величинам.

classdef MyClass
   properties
      Prop1 {mustBeNegative}
   end
end

Создайте объект и присвойте значение Prop1.

obj = MyClass;
obj.Prop1 = rand(1,5) - 0.75;
Error setting property 'Prop1' of class 'MyClass':
Value must be negative.

Когда вы присваиваете значение свойству, MATLAB® вызывает mustBeNegative со значением, присваиваемым свойству. mustBeNegative выдает ошибку, если любой из элементов в массиве не отрицателен.

Эта функция объявляет два входных параметра. Введите lower должно быть отрицание и вход upper не должно быть отрицательным.

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

Вызывание функции со значением для lower это не удовлетворяет требования mustBeNegative заканчивается ошибка.

mbNegative(0,4)
Error using mbNegative
Invalid input argument at position 1. Value must be negative.

Входные параметры

свернуть все

Значение, чтобы подтвердить в виде скаляра или массива одного из следующего:

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Введенный в R2017a