Main Content

支持可变数量的输入

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

在名为 plotWithTitle.m 的文件中创建一个函数,为 plot 函数接受可变数量的成对输入 (x,y) 和可选的标题。如果该函数接收的输入数为奇数,它将最后一个输入视为标题。

function plotWithTitle(varargin)
if rem(nargin,2) ~= 0
    myTitle = varargin{nargin};
    numPlotInputs = nargin - 1;
else
    myTitle = 'Default Title';
    numPlotInputs = nargin;
end

plot(varargin{1:numPlotInputs})
title(myTitle)

由于 varargin 是元胞数组,您要使用花括号 {} 来访问每个元胞的内容。语法 varargin{1:numPlotInputs} 创建 plot 函数的逗号分隔输入列表。

调用两组 (x,y) 输入和一个标题的 plotWithTitle

x = [1:.1:10];
y1 = sin(x);
y2 = cos(x);
plotWithTitle(x,y1,x,y2,'Sine and Cosine')

您可以在输入参量列表中或输入列表末尾单独使用 varargin,例如

function myfunction(a,b,varargin)

在这种情况下,varargin{1} 对应于传递到该函数的第三个输入,并且 nargin 返回 length(varargin) + 2

另请参阅

|

相关示例

详细信息