Section: Functions and Scripts
varargin.
This special keyword indicates that all arguments to the
function (beyond the last non-varargin keyword) are assigned
to a cell array named varargin available to the function.
Variable argument functions are usually used when writing
driver functions, i.e., functions that need to pass arguments
to another function. The general syntax for a function that
takes a variable number of arguments is
function [out_1,...,out_M] = fname(in_1,..,in_M,varargin)
Inside the function body, varargin collects the arguments
to fname that are not assigned to the in_k.
feval that demonstrates the
use of variable arguments functions.
wrapcall.m
function wrapcall(fname,varargin)
feval(fname,varargin{:});
Now we show a call of the wrapcall function with a number
of arguments
--> wrapcall('printf','%f...%f
',pi,e)
3.141593...2.718282
-->
quit
A more serious driver routine could, for example, optimize
a one dimensional function that takes a number of auxilliary
parameters that are passed through varargin.