主要内容

nargout

函数输出参数的个数

描述

例子

nargout返回在对当前正在执行的函数的调用中指定的函数输出参数的数量。只能在函数体中使用此语法。

例子

nargout (有趣的控件中出现的输出数量有趣的函数的定义。如果函数包含varargout那么,在它的定义中nargout返回输出数量的负数。例如,if函数myFun声明输出yz,varargout,然后nargout(“myFun”)返回3

例子

全部折叠

在一个名为subtract.m,创建一个计算第二个返回值的函数,absdif,只有在被要求的情况下。

类型subtract.m
函数[dif,absdif] = subtract(y,x) dif = y-x;if nargout > 1 disp('计算绝对值')absdif = abs(dif);结束结束

在命令提示符处,调用减去函数只有一个返回值。

diff =减去(42岁,13)
diff = 29

调用减去再次使用两个返回值函数。

[dif, absdif] =减去(2、5)
计算绝对值
dif = 3
absdif = 3

确定一个函数可以返回多少个输出。

这个函数减去在前一个示例中创建的,在其声明语句中有两个输出(dif而且absdif).

有趣= @subtract;nargout(有趣)
ans = 2

确定一个函数使用多少输出varargout可以返回。

在一个名为mySize.m,创建一个函数,该函数从大小功能和各个尺寸的使用varargout

类型mySize.m
function [sizeVector,varargout] = mySize(x);varargout =细胞(1、nargout-1);for k = 1:length(varargout) varargout{k} = sizeVector(k);结束结束

查询多少个输出mySize可以返回。

有趣的=“mySize”;nargout(有趣)
ans = 2

负号表示第二个输出为varargout.的mySize函数可返回数目不定的附加输出。

输入参数

全部折叠

函数的nargout从其定义返回输出参数的数量,指定为函数句柄、字符向量或字符串标量。

例子:@rand

例子:“sortrows”

数据类型:字符|function_handle

提示

  • 当使用函数作为表达式的一部分时,例如如果MATLAB语句,然后®调用带有一个输出参数的函数。因此,nargout函数返回1在表达式。

  • 如果你检查anargout值为0的函数,你指定输出的值,MATLAB填充.然而,如果你检查nargout并且不为输出指定值,则MATLAB不进行修改

扩展功能

版本历史

之前介绍过的R2006a

Baidu
map