varargout
Specifies that a function can return a variable number of outputs.
Syntax
function varargout = foo()
end
Outputs
- varargout
- Anything that can be an output of a function.
Examples
Simple output example:
function varargout = foo()
varargout{1} = 10;
varargout{2} = 20;
varargout{3} = 30;
end
[a] = foo()
a = 10
Multiple return
example:
function varargout = foo()
varargout{1} = 'a';
varargout{2} = 'b';
varargout{3} = 'c';
end
foo() % it should return the first element of varargout here
R = foo() % it should return the first element of varargout here
[R1, R2] = foo() % it returns 'a' in R1 and 'b' in R2 OK
[R1,R2, R3] = foo() % it returns 'a' in R1 and 'b' in R2 OK and 'c' in R3 OK
ans = a
R = a
R1 = a
R2 = b
R1 = a
R2 = b
R3 = c