Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

参数定义

接受可变数量的输入或输出,检查有效值

由于 MATLAB® 是一种非类型化语言,大多数函数都不需要参数声明或验证。但是,如果您的函数有广泛的用途,并且您需要验证输入的类型、大小或其他方面以确保代码按预期工作,您可以定义一个 arguments 代码块(从 R2019b 开始)。有关详细信息,请参阅函数参数验证

此外,您可以检查您的函数接收到多少个输入或输出、输入变量的名称等。

函数

全部展开

参数块

arguments声明函数参数验证

数值验证

mustBePositive验证值为正
mustBeNonpositive验证值为非正
mustBeNonnegative验证值为非负值
mustBeNegative验证值为负值
mustBeFinite验证值是有限值
mustBeNonNan验证值不是 NaN
mustBeNonzero验证值为非零
mustBeNonsparse验证值为非稀疏值
mustBeReal验证值是实数
mustBeInteger验证值为整数
mustBeNonmissing验证值未缺失

比较

mustBeGreaterThan验证值大于另一个值
mustBeLessThan验证值小于另一个值
mustBeGreaterThanOrEqual验证值大于等于另一个值
mustBeLessThanOrEqual验证值小于等于另一个值

数据类型

mustBeA验证值来自指定的类之一
mustBeNumeric验证值为数值
mustBeNumericOrLogical验证值为数值或逻辑值
mustBeFloat验证值是浮点数组
mustBeText验证值是字符串数组、字符向量或字符向量元胞数组
mustBeTextScalar验证值是一段文本
mustBeNonzeroLengthText验证值为非零长度的文本
mustBeUnderlyingType验证值具有指定的基础类型

大小

mustBeNonempty验证值为非空
mustBeScalarOrEmpty验证值是标量或为空
mustBeVector验证值为向量

范围和集合关系

mustBeInRange验证值在指定范围内
mustBeMember验证值是指定集的成员

名称

mustBeFile验证路径指向文件
mustBeFolder验证输入路径指向文件夹
mustBeValidVariableName验证输入名称是有效的变量名称

名称-值参数结构体

namedargs2cell将包含名称-值对组的结构体转换为元胞数组

输入

varargin可变长度输入参数列表
nargin函数输入参数数目
narginchk验证输入参数数目

输出

varargout可变长度的输出参数列表
nargout函数输出参数数目
nargoutchk验证输出参数数目
validateattributes检查数组的有效性
validatestring检查文本的有效性
validatecolor验证颜色值
inputname函数输入的变量名称
mfilename当前正在运行的代码的文件名
inputParser函数的输入解析器

主题

参数值

解析函数输入的方法

选择一种检查输入参数有效性的方法。

函数参数验证

声明输入参数类和大小,并对参数值强制施加限制。

通过 validateattributes 检查函数输入

此示例说明如何使用 validateattributes 函数验证您的函数输入是否符合各种要求。

解析函数输入

定义必需和可选的输入、指定可选输入的默认值以及使用输入解析器验证自定义函数的所有输入。

参数数量

支持可变数量的输入

使用 varargin 定义接受可变数量的输入参数的函数。varargin 参数是包含函数输入的元胞数组,其中每个输入都位于它自己的元胞中。

支持可变数量的输出

使用 varargout 定义返回可变数量的输出参数的函数。输出 varargout 是包含函数输出的元胞数组,其中每个输出都位于它自己的元胞中。

查找函数参数的数量

使用 narginnargout 确定您的函数收到的输入或输出参数的数量。

直通输入

忽略函数定义中的输入

如果函数接受一组预定义的输入,但不使用所有输入,请使用波浪号 (~) 运算符忽略函数定义中的输入。