mustBeLessThan

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

Синтаксис

Описание

пример

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

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

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

Примеры

свернуть все

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

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

Ограничьте значения свойств, чтобы быть меньше заданного значения.

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

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

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

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

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

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

function r = mbLessThan(x)
    arguments
        x {mustBeLessThan(x,5)}
    end
    r = x + 5;
end

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

x = [1.27, 4.54, 3.9, 5.0, .531];
r = mbLessThan(x);
Error using mbLessThan
Invalid input argument at position 1. Value must be less than 5.

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

свернуть все

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

При использовании mustBeLessThan как блок проверки допустимости свойства, этот аргумент должен быть именем свойства, заданным без кавычек.

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

  • Любой числовой класс

  • Логический класс

  • Классы MATLAB та реализация ltisscalarisreal, и любой isnumeric или islogical

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

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

Введенный в R2017a