mustBeA

Проверьте, что значение получено из одного из заданных классов

    Синтаксис

    Описание

    пример

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

    Поддержка класса: Все MATLAB® классы

    Примеры

    свернуть все

    Проверьте, что значение является скаляром или массивом строк или uint8 типов.

    a = 'red';
    mustBeA(a,["string","uint8"])
    Value must be of the following types: 'string' or 'uint8'.

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

    b = [1 0 0];
    mustBeA(b,["string","uint8"])
    Value must be of the following types: 'string' or 'uint8'.

    Передача массива двойных целых чисел недопустима, потому что mustBeA ограничивает числовые значения uint8 только.

    Подклассы удовлетворяют соотношению «isa» с суперклассами. Поэтому значение, которое является подклассом одного из заданных классов, допустимо.

    Задайте подкласс uint8.

    classdef ColorSpec < uint8
        methods
            function obj = ColorSpec(c)
                if nargin == 0
                    c = uint8(0);
                end
                obj = obj@uint8(c);
            end
        end
    end
    

    Создайте объект ColorSpec класс.

    a = ColorSpec([1 0 0])
    a = 
    
      1×3 ColorSpec:
    
      uint8 data:
       1   0   0

    The ColorSpec объект содержит uint8 данные.

    Проверьте валидность ColorSpec объект с mustBeA. Следующий оператор не приводит к ошибке.

    mustBeA(a,["string","uint8"])

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

    свернуть все

    Значение для проверки, заданное как скаляр или массив любого MATLAB или определяемого пользователем типа.

    Имена одного или нескольких классов, заданные как строковый или символьный вектор.

    Пример: ["double", "single"]

    Совет

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

    Введенный в R2020b