In the formal argument list, it is possible to use the dummy placeholder
~ instead of a name. This indicates that the corresponding argument
value should be ignored and not stored to any variable.
function val = pick2nd (~, arg2) val = arg2; endfunction
The value of
nargin is not affected by using this declaration.
Return arguments can also be ignored using the same syntax. Functions may
take advantage of ignored outputs to reduce the number of calculations
performed. To do so, use the
isargout function to query whether the
output argument is wanted. For example:
function [out1, out2] = long_function (x, y, z) if (isargout (1)) ## Long calculation … out1 = result; endif … endfunction
Within a function, return a logical value indicating whether the argument
k will be assigned on output to a variable. If the result is false,
the argument has been ignored during the function call through the use of
the tilde (~) special output argument. Functions can use
avoid performing unnecessary calculations for outputs which are unwanted.
If k is outside the range
1:max (nargout), the function returns
false. k can also be an array, in which case the function works
element-by-element and a logical array is returned. At the top level,
isargout returns an error.
See also: nargout, nargin, varargin, varargout, nthargout.