主要内容

变长度输入宗量

可变长度的输入参数列表

描述

例子

变长度输入宗量是函数定义语句中的输入变量,使函数能够接受任意数量的输入参数。指定变长度输入宗量使用小写字符,并在任何显式声明的输入之后将其作为最后一个输入参数。

当函数执行时,变长度输入宗量是1 -N单元阵列,N函数在显式声明的输入之后接收的输入数。但是,如果函数在显式声明的输入之后没有接收到输入,则变长度输入宗量为空单元格数组。

例子

全部展开

在命名的文件中定义一个函数acceptVariableNumInputs.m接受可变数量的输入并显示每个输入的值。

类型acceptVariableNumInputs
function acceptVariableNumInputs(varargin) disp("Number of input arguments: " + nargin) celldisp(varargin) end .(输入参数的个数

用几个输入调用函数。

acceptVariableNumInputs ((3),“一些文字”,pi)
输入参数个数:3 varargin{1} = 1 1 1 1 1 1 1 1 1 1 1 varargin{2} = some text varargin{3} = 3.1416

在命名的文件中定义一个函数definedAndVariableNumInputs.m它需要两个输入,并接受更多的输入。

类型definedAndVariableNumInputs
函数simentAddVariaBlenumumputs(x,y,varargin)disp(“输入参数的总数:”+ nargin)formatspec =“varargin单元阵列的大小:%dx%d”;str = compose(formatspec,size(varargin));DISP(str)结束

用几个输入调用函数。

definedAndVariableNumInputs(7,π,兰德(4),日期时间(“现在”),“你好”
varargin cell array的大小:1x3

使用两个输入调用函数。变长度输入宗量为空单元格数组。

setainmandvariablenuminpuls(13,42)
输入参数总数:2 varargin cell array的大小:0x0

在命名的文件中定义一个函数variableNumInputAndOutput.m接受可变数量的输入和输出。

类型variablenuminputandoutput.
function varargout = variableNumInputAndOutput(varargin) disp(['Number of provided inputs: ' num2str(length(varargin))]) disp(['Number of requested outputs: ' num2str(nargout)]) for k = 1:nargout varargout{k} = k;结束结束

使用两个输入和三个输出调用函数。

g (d, p) = variableNumInputAndOutput (6“关系”
提供输入的数量:2所请求的输出次数:3
d = 1
g = 2
p = 3

在没有输入或输出的情况下再次调用函数。

variablenuminputandoutput.
提供输入的数量:0所请求的输出数:0

在工作文件夹中的文件中,将包装器创建到绘制红线的绘图函数。这redplot函数接受一个变长输入参数列表,并返回一个变长输出参数列表。它将行颜色设置为红色,并将其他输入值转发给情节函数。这个函数包装器使您能够传递redplot相同的输入情节并且不指定线的颜色为红色。

类型redplot.m.
function varargout = redplot(varargin) [varargout{1:nargout}] = plot(varargin{:},'Color',[1,0,0]);结束

使用redplot创建线图。

x = 0:π/ 100:2 *π;y = sin (x);redplot (x, y)

图中包含一个轴对象。axis对象包含一个类型为line的对象。

调用redplot并指定要转发给的输入和输出参数情节函数。

h = redplot (x, y,'标记''o''markeredgecolor'“绿色”);

图中包含一个轴对象。axis对象包含一个类型为line的对象。

扩展功能

在R2006A之前介绍