addParamValue

(Не рекомендуемый) Добавить необязательный аргумент пары "имя-значение" во входную схему анализатора

addParamValue не рекомендуется. Использовать addParameter вместо этого.

Описание

пример

addParamValue(p,paramName,defaultVal) добавляет имя параметра необязательного аргумента пары "имя-значение" во входную схему анализатора. Когда входы в функцию не включают эту опциональную пару "имя-значение", входной анализатор присваивает paramName значение defaultVal.

В отличие от позиционных входов, добавленных с addRequired и addOptional функций, каждый параметр добавлен с addParamValue соответствует двум входным параметрам: одному для имени и одному для значения.

addParamValue(p,paramName,defaultVal,validationFcn) задает функцию проверки для входного параметра.

Примеры

свернуть все

Проверьте, что значение, соответствующее myParam, со значением по умолчанию 1, является числовым скаляром, большим нуля.

Создайте вход анализатора. Для функции валидации @(x) создает указатель на анонимную функцию, которая принимает один вход.

p = inputParser;
paramName = 'myParam';
defaultVal = 1;
errorMsg = 'Value must be positive, scalar, and numeric.'; 
validationFcn = @(x) assert(isnumeric(x) && isscalar(x) ...
    && (x > 0),errorMsg);
addParamValue(p,paramName,defaultVal,validationFcn)

Проанализируйте недопустимый входной параметр, такой как -1.

parse(p,'myparam',-1)
The value of 'myparam' is invalid. Value must be positive, scalar, and numeric.

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

свернуть все

Вход анализатора, заданная как inputParser объект.

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

Пример: "firstName"

Пример: 'address'

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

Значение по умолчанию для входа, заданное как любой тип данных. Если argName не является входом в функцию, когда parse функция анализирует входы, затем присваивает argName значение defaultVal.

Функция для проверки аргумента, заданная как указатель на функцию.

Указатель на функцию должен быть связан с функцией, которая возвращает true или false, или проходит тест, или выдает ошибку. Оба типа функций должны принимать один входной параметр.

Пример: @(s)isstring(s)

Пример: @(x)isnumeric(x)&&isscalar(x)

Пример: @(n)validateattributes(n,{'numeric'},{'nonnegative'})

Типы данных: function_handle

Совет

  • Пары "имя-значение" параметра являются необязательными входами. При вызове функции пар "имя-значение" могут появиться в любом порядке после позиционных аргументов. Они принимают общую форму Name1,Value1,...,NameN,ValueN.

Введенный в R2007a
Для просмотра документации необходимо авторизоваться на сайте