mustBePositive

Проверьте, что значение положительно

Синтаксис

Описание

пример

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

mustBePositive вызывает эти функции, чтобы определить, не является ли вход положительным:

Поддержка классов: Все числовые классы, logical, и MATLAB® классы, которые перегружают функции, вызываемые mustBePositive.

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

Примеры

свернуть все

Использование mustBePositive чтобы подтвердить, что вход содержит только положительные значения.

rand функция создает равномерно распределенное случайное число.

A = rand(1,5) -0.5;

Проверьте, что элементы массива положительны.

mustBePositive(A)
Error using mustBePositive (line 14)
Value must be positive.

Результат вычитания 0.5 из массива возвращается по rand может содержать отрицательные числа. Когда значение отрицательно, mustBePositive выдает ошибку.

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

classdef MyClass
   properties
      Prop1 {mustBePositive}
   end
end

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

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

Когда вы присваиваете значение свойству, MATLAB вызывает mustBePositive со значением, назначенным свойству. mustBePositive выдает ошибку, поскольку значение 0 не положительно.

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

function r = mbPositive(A,ix)
    arguments
        A (1,:) {mustBeNumeric}
        ix {mustBePositive, mustBeInteger}
    end
    r = A(ix);
end

Вызов функции со значением для ix который не удовлетворяет требованию mustBePositive приводит к ошибке.

A = 1:10;
ix = 0;
r = mbPositive(A,ix);
Error using mbPositive
Invalid input argument at position 2. Value must be positive.

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

свернуть все

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

Совет

  • mustBePositive предназначен для использования в валидацию аргументов свойства и функции.

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

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

.
Введенный в R2017a