mustBeNumericOrLogical

Проверьте, что значение является числовым или логическим

Описание

пример

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

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

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

Примеры

свернуть все

Проверьте, что значение свойства объекта является числовым или логическим значением.

a = axes;
mustBeNumericOrLogical(a.Visible)
Error using mustBeNumericOrLogical (line 11)
Values must be numeric or logical.

В этом случае значение Visible свойство является char вектор, который приводит к ошибке.

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

classdef MyClass
   properties
      Prop1 {mustBeNumericOrLogical}
   end
end

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

obj = MyClass;
obj.Prop1 = get(gca,'Visible');
Error setting 'Prop1' property of 'MyClass' class:
Values must be numeric or logical.

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

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

function r = mbNumericOrLogical(x)
    arguments
        x (1,:) {mustBeNumericOrLogical}
    end
    p = [3 2 1];
    r = polyval(p,x);
end

Вызов этой функции с помощью вектора символов приводит к ошибке, выдаваемой mustBeNumericOrLogical.

x = '4 3 2';
r = mbNumericOrLogical(x);
Error using mbNumericOrLogical
Invalid input argument at position 1. Value must be numeric or logical.

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

свернуть все

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

  • logical или числового класса

  • Классы MATLAB, которые реализуют isnumeric или islogical

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
Поддержка комплексного числа: Да

Совет

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

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

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

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