How to input functon arguments without order?

5 views (last 30 days)
Is there a way for calling a function which has a lot of arguments without the order?
for example consider the following function:
function y=f(x1, x2, x3, x4, x5, x6)
%code
end
I would like to call it as follows:
f(x2=2, x1=4, x6=7, x4=0, x3=-1, x5=2.5)

Accepted Answer

Steven Lord
Steven Lord on 17 Aug 2022
As of release R2021a you could do that by requiring all the inputs to be specified as name-value pair arguments. But if your function has many, many input arguments you might want to consider packing those inputs into a vector, a struct array, or an object.
  2 Comments
danial19
danial19 on 17 Aug 2022
Would you give an example with non-2021 vesrsion?
Steven Lord
Steven Lord on 17 Aug 2022
You can't, not as you've written it. What you've written is not syntactically legal in earlier releases.

Sign in to comment.

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!