varargin
variável do número de argumentos de saída em uma lista de argumentos de entrada
Descrição
Uma função cujo último argumento de entrada é
varargin
pode ser chamada com mais argumentos de
entrada que os indicados pela lista de argumentos de entrada. Os
argumentos de chamada passados da palavra-chave
varargin
em diante podem ser recuperados em uma lista
chamada varargin
.
Suponha que a palavra-chave varargin
é o n-ésimo
argumento da lista de argumentos de entrada formal, então, se a função é
chamada com n-1
argumentos de entrada, a lista
varargin
não é definida. Se a função for chamada com
n-1
argumentos, então varargin
é uma
lista vazia
function y= ex(varargin)
pode ser chamada com
qualquer número de argumentos de entrada. Dentro da função
ex
argumentos de entrada podem ser recuperados em
varargin(i)
, i=1:length(varargin)
Se não for o último argumento de entrada da função,
varargin
é um argumento de entrada normal, sem nenhum
significado especial.
O número de argumentos de entrada real é dado por argn(2)
.
Observações
Sintaxe de argumento nomeada, como foo(...,key=value)
,
é incompatível com o uso de varargin
. A razão é que os nomes
(i.e. keys) associados aos valores value não são armazenados na lista
varargin
. Considere por exemplo:
function foo(varargin) disp([varargin(1),varargin(2)]) endfunction
--> foo(a=1, b=2) 1. 2. --> foo(b=1, a=2) 1. 2.
O resultado é o mesmo, mas os argumentos foram invertidos.
Exemplos
Report an issue | ||
<< tree2code | Funções | varargout >> |