主要内容

varargout.

可变长度输出参数列表

句法

描述

例子

varargout.是函数定义语句中的输出变量,它可以返回任意数量的输出参数。指定varargout.使用小写字符,并在任何明确声明的输出后将其作为最后一个输出参数。

当函数执行时,varargout.是一个1-by-N单元格阵列,其中N是明确声明的输出后请求的输出数。在功能内,varargout.是一个未初始化的变量,而不是预先删除。

例子

展开全部

在命名的文件中定义函数returnvariablenumoutpuls.m.返回输出大小向量S.和一个可变数量的额外输出。

类型returnvariablenumoutpuls.
功能[s,varargout] = returnvariablenumoutputs(x)nout = max(nargout,1) -  1;s = size(x);对于k = 1:nout varargout {k} = s(k);结束

输出S.包含输入数组的尺寸X。附加输出对应于内部的各个尺寸S.

用三维阵列调用函数并请求三个输出。

a = rand(4,5,2);[s,行,cols] = returnvariablenumoutputs(a)
S =1×34 5 2
Rows = 4.
COLS = 5

使用四维阵列再次调用函数并请求四个输出。这次,该函数不会返回单个第四维度。

a =零(1,4,5,2);[s,dim1,dim2,dim3] = returnvariablenumoutputs(a)
S =1×4.1 4 5 2
DIM1 = 1
dim2 = 4.
DIM3 = 5.

再次调用函数一种并要求一个输出。现在该函数返回尺寸一种并不是varargout.

s = returnvariablenumoutputs(a)
S =1×4.1 4 5 2

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

类型variablenuminputandoutput.
功能varargout = variablenumentandoutput(varargin)disp(['提供输入的数量:'num2str(长度(varargin))])disp(['k = 1:nargout varargout {nargout varargout {k} = k;结束

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

[d,g,p] = variablenumentandoutput(6,'关系'
提供输入的数量:2所请求的输出数:3
d = 1
G = 2.
P = 3.

再次调用函数,没有输入或输出。

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

在工作文件夹中的文件中,将包装器创建为绘制红线的绘图函数。这redplot.函数接受变量长度输入参数列表,并返回一个变量长度输出参数列表。它将线条颜色设置为红色,并将其他输入值转发到阴谋功能。此功能包装器使您可以通过redplot.与之相同的输入阴谋而不是指定线颜色为红色。

类型redplot.m.
函数varargout = redplot(varargin)[varargout {1:nargout}] = plot(varargin {:},'颜色',[1,0,0]);结尾

采用redplot.创建一个线绘图。

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

图包含轴。轴包含类型线的对象。

称呼redplot.再次,并指定要转发的输入和输出参数阴谋功能。

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

图包含轴。轴包含类型线的对象。

扩展能力

在R2006A之前介绍