mustBeNumeric

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

Синтаксис

Описание

пример

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

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

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

Примеры

свернуть все

Подтвердите это, результат операции является числовым.

mustBeNumeric(5 < 10)
Error using mustBeNumeric (line 10)
Values must be numeric.

Оператор отношения для меньше, чем возвращает логическое значение.

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

classdef MyClass
   properties
      Prop1 {mustBeNumeric}
   end
end

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

obj = MyClass;
obj.Prop1 = isprime(29);
Error setting 'Prop1' property of 'MyClass' class:
Values must be numeric.

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

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

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

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

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

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

свернуть все

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

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

  • Классы MATLAB та реализация isnumeric

Другие типы данных вызывают ошибку.

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

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

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

Введенный в R2017a