Matlab 是否有一种 with...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
这可能吗?
Matlab 是否有一种 with...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
这可能吗?
我不知道 Matlab 中有这样的功能。
你能做的是
cur = Root.ChildLevel1;
cur.A = cur.B + cur.C;
编辑:
根据@Nick 的评论,如果Root.ChildLevel1不是的 子类handle,则应添加以下行:
Root.ChildLevel1 = cur;
我也建议
clear cur;
在末尾。
我不得不说我不建议经常使用这个函数,但我曾经尝试过一个 FEX 贡献,它可以让你解压结构。
当然,这仍然需要您在完成计算后更新结构,所以我只将它用于主要使用结构作为输入的子函数。
我不确定,但我认为这是我尝试过的:
http://www.mathworks.com/matlabcentral/fileexchange/26216-structure-fields-to-variables