Matlab store/modify 引用矩阵中的变量
Matlab store/modify references to variables within a matrix
我正在尝试为一个应用程序编写一个 save/load 函数,该应用程序在 matlab 中具有大量属性。保存工作正常,但我在加载时遇到了问题。我遇到的问题是:
loadlist=['app.starting_height','app.dragenabled','app.heading'...];
n=1;
for(n=1:length(loadlist))
loadlist(1,n)=savelist(1,n);
我想做的不是更改加载列表 (loadlist(1,n) 中的值,而是更改它们引用的属性 (app.startingheight,等等)。我有一个尝试使用句柄的想法,但我不太确定它是如何工作的。如有任何帮助,我们将不胜感激。
谢谢!
您可以从变量生成字段名称,所以像这样:
loadlist=["app.starting_height","app.dragenabled","app.heading"...];
for elem = loadlist
field_names = split(elem, '.');
app.(fieldnames(2)) = ...
应该可以。
我正在尝试为一个应用程序编写一个 save/load 函数,该应用程序在 matlab 中具有大量属性。保存工作正常,但我在加载时遇到了问题。我遇到的问题是:
loadlist=['app.starting_height','app.dragenabled','app.heading'...];
n=1;
for(n=1:length(loadlist))
loadlist(1,n)=savelist(1,n);
我想做的不是更改加载列表 (loadlist(1,n) 中的值,而是更改它们引用的属性 (app.startingheight,等等)。我有一个尝试使用句柄的想法,但我不太确定它是如何工作的。如有任何帮助,我们将不胜感激。
谢谢!
您可以从变量生成字段名称,所以像这样:
loadlist=["app.starting_height","app.dragenabled","app.heading"...];
for elem = loadlist
field_names = split(elem, '.');
app.(fieldnames(2)) = ...
应该可以。