Matlab有一种带... end命令吗? http://msdn.microsoft.com/en-us/library/wc500chb(v=vs.80).aspx
我的工作区中有一个包含大量嵌套数据的变量。现在我不想一直输入这个:
Root.ChildLevel1.A = Root.ChildLevel1.B + Root.ChildLevel1.C
但更像是:
with Root.ChildLevel1
A = B + C
end
这可能吗?
答案 0 :(得分:3)
我不知道Matlab中有这样的功能 你能做的是
cur = Root.ChildLevel1;
cur.A = cur.B + cur.C;
修改强>
根据@Nick的评论,如果Root.ChildLevel1
不 subclass of handle
,
然后应该添加以下行:
Root.ChildLevel1 = cur;
我也建议
clear cur;
最后。
答案 1 :(得分:1)
我不得不说我不建议经常使用这个功能,但我曾尝试过一个FEX贡献,允许你解压缩结构。
当然,这仍然需要你在完成计算后更新结构,所以我只将它用于主要使用结构作为输入的子函数。
我不确定,但我认为这是我试过的那个:
http://www.mathworks.com/matlabcentral/fileexchange/26216-structure-fields-to-variables