我有一个函数需要可变数量的输入,比如说myfun(x1,x2,x3,...)
.
现在,如果我将输入存储在结构体数组 S 中,我想做类似的事情myfun(S.x1,S.x2,...)
。我该怎么做呢?
您可以首先使用将结构转换为元胞数组结构2单元 http://www.mathworks.com/help/techdoc/ref/struct2cell.html,然后使用它来生成多个输入的列表。
S = struct('x1','something','x2','something else');
C = struct2cell(S);
myfun(C{:});
请注意,其中字段的顺序S
定义了输入传递的顺序。要检查字段的顺序是否正确,您可以运行fieldnames
on S
,它返回一个单元格,其字段名称与中的值相对应C
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)