mustBeGreaterThan

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

Синтаксис

Описание

пример

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

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

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

Примеры

свернуть все

Используйте mustBeGreaterThan чтобы подтвердить это, значения в первом входе больше значения второго входа.

mustBeGreaterThan([2 3 4],2)
Error using mustBeGreaterThan (line 19)
Value must be greater than 2.

Этот класс ограничивает значение Prop1 быть больше 2.

classdef MyClass
   properties
      Prop1 {mustBeGreaterThan(Prop1,2)}
   end
end

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

obj = MyClass;
Obj.Prop1 = 2;
Error setting property 'Prop1' of class 'MyClass':
Value must be greater than 2.

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

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

function r = mbGreaterThan(x)
    arguments
        x {mustBeGreaterThan(x,5)}
    end
    r = x - 5;
end

Вызывание функции с вектором, который содержит значения, которые меньше чем или равны 5, не удовлетворяет требования, заданные с mustBeGreaterThan и результаты по ошибке.

x = [12.7, 45.4, 5.0, 77.1, 53.1];
r = mbGreaterThan(x);
Error using mbGreaterThan
Invalid input argument at position 1. Value must be greater than 5.

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

свернуть все

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

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

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

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

Введенный в R2017a