Main Content

addParamValue

(不推荐)在输入解析器模式中添加可选的名称-值对组参数

不推荐使用 addParamValue。请改用 addParameter

说明

示例

addParamValue(p,paramName,defaultVal) 将一个可选的名称-值对组参数的参数名称添加到输入解析器模式中。如果函数的输入参数不包含这个可选的名称-值对组,输入解析器会为 paramName 赋予值 defaultVal

与使用 addRequiredaddOptional 函数添加的位置输入参数不同,使用 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

用于验证参数的函数,指定为函数句柄。

函数句柄必须与函数关联,该函数要么返回 truefalse,要么通过测试或引发错误。这两个类型的函数都必须接受单个输入参数。

示例: @(s)isstring(s)

示例: @(x)isnumeric(x)&&isscalar(x)

示例: @(n)validateattributes(n,{'numeric'},{'nonnegative'})

数据类型: function_handle

提示

  • 参数名称-值对组是可选输入。调用函数时,名称-值对组可以按任何顺序出现在位置参数之后。一般形式为 Name1,Value1,...,NameN,ValueN

版本历史记录

在 R2007a 中推出