image thumbnail

Default arguments

version 1.0.0.0 (2.64 KB) by Ged Ridgway
Set missing/empty variable or field to given value

471 Downloads

Updated 15 Dec 2009

View License

This simple helper-function lets you replace commonly seen input-argument handling code with shorter and clearer alternatives. For example, instead of:
if nargin < 2
x = 42;
end
if ~isfield(options, 'verbose')
options.verbose = false;
end
if ~isfield(options, 'method')
options.method = 1;
end

you can simply have:
default('x', 42)
default(options, 'verbose', false)
default(options, 'method', 1)

By avoiding nargin, you can more easily change function definitions without messing up all of the argument numbers, e.g. changing: function blah(input, verbose)
to: function blah(method, input, options, verbose)
only requires new default commands for method and options arguments, whereas use of nargin would need to change for input and verbose.

I find this useful -- I hope others do too! :-)

Cite As

Ged Ridgway (2021). Default arguments (https://www.mathworks.com/matlabcentral/fileexchange/26111-default-arguments), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R14SP3
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!