oro*_*777 6 matlab struct field-names
我想知道从另一个具有不同字段的结构更新Matlab结构的最简单方法.请看我的例子,了解我的意思.我有两个结构S1和S2,我想要结合不同的字段名.
S1.a = 1;
S1.b = 2;
S2.c = 3;
S2.d = 4;
Run Code Online (Sandbox Code Playgroud)
如果我写S1 = S2;S1结构显然会被S2覆盖.我希望结果如下代码:
S1.a = 1;
S1.b = 2;
S1.c = 3;
S1.d = 4;
Run Code Online (Sandbox Code Playgroud)
有没有一种简单的方法可以做到这一点.我设法通过使用for循环和fieldnames()函数来实现它,以便从S2获取字段名并将其放在S1中,但它并不是一个真正的解决方案.
如果您知道这两个结构没有相同的字段,这可能会有所帮助
tmp = [fieldnames(S1), struct2cell(S1); fieldnames(S2), struct2cell(S2)].';
S1 = struct(tmp{:});