mustBeUnderlyingType

Проверьте, что значение имеет указанный базовый тип

Описание

пример

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

mustBeUnderlyingType вызывает следующую функцию, чтобы определить, имеет ли вход заданный базовый тип:

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

Примеры

свернуть все

Использовать mustBeUnderlyingType чтобы подтвердить, что вход имеет базовый тип double.

Создайте distributed массив (требует Parallel Computing Toolbox™) и затем проверьте, что базовый тип данных double.

x = distributed(single(1:10));
mustBeUnderlyingType(x,"double")
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 6).
Value must have underlying type 'double'.

mustBeUnderlyingType выдает ошибку, поскольку базовый тип распределенного массива single.

Использовать mustBeUnderlyingType для ограничения входных параметров, принимаемых функцией. Это можно сделать, добавив arguments блокируйте функцию, которая проверяет входные параметры.

Эта функция объявляет один входной параметр. В arguments блок, вход должен иметь базовый тип данных single.

function y = mbSingle(input)
    arguments
        input {mustBeUnderlyingType(input,"single")}
    end

    disp("Input is class " + class(input) + ...
        " with underlying type " + underlyingType(input) + ".")
end

Вызовите функцию с distributed вектор (требует Parallel Computing Toolbox), который имеет базовые данные типа single. Поскольку вход проходит валидацию аргумента, mbSingle функция печатает информацию о классе и базовом типе.

x = distributed(single(1:10));
mbSingle(x)
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 6).
Input is class distributed with underlying type single.

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

свернуть все

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

Пример: mustBeUnderlyingType(magic(4),"single")

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

Пример: mustBeUnderlyingType(X,"double") выдает ошибку X не имеет базового типа double.

Типы данных: char | string

Совет

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

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

Введенный в R2020b