Argument Definitions
Since MATLAB® is an untyped language, most functions do not require argument
declarations or validation. However, if your function has wide usage and you
need to verify the type, size, or other aspects of inputs to ensure that
your code works as expected, you can define an arguments
block (since R2019b). For details, see Function Argument Validation.
Additionally, you can check how many inputs or outputs your function receives, the names of input variables, and more.
Functions
Topics
Argument Validation
- Function Argument Validation
Declare argument class and size, and enforce restrictions on argument values.
- Argument Validation Functions
Validate specific requirements of arguments using validation functions. Write your own functions to check for specific argument requirements.
- Check Function Inputs with validateattributes
This example shows how to verify that the inputs to your function conform to a set of requirements using thevalidateattributes
function. - Parse Function Inputs
Define required and optional inputs, assign defaults to optional inputs, and validate all inputs to a custom function using the Input Parser.
Number of Arguments
- Support Variable Number of Inputs
Define a function that accepts a variable number of input arguments usingvarargin
. Thevarargin
argument is a cell array that contains the function inputs, where each input is in its own cell. - Support Variable Number of Outputs
Define a function that returns a variable number of output arguments usingvarargout
. Outputvarargout
is a cell array that contains the function outputs, where each output is in its own cell. - Find Number of Function Arguments
Use
nargin
andnargout
to determine how many input or output arguments your function receives.
Pass-Through Inputs
- Ignore Inputs in Function Definitions
If your function accepts a predefined set of inputs, but does not use all the inputs, use the tilde (~
) operator to ignore them in your function definition.