我不确定这在Matlab中是否可行但是想确定。
我的结构如下:
free
我想创建一个结构DataStore:
x = struct();
x.val1 = 5;
x.val2 = 7;
y = struct();
y.val1 = 15;
y.val2 = 17;
OR
DataStore = struct;
DataStore(x).val1 = 5
DataStore(x).val2 = 7
DataStore(y).val1 = 15
DataStore(y).val2 = 17
所以,我使用原始结构变量的名称作为DataStore的索引。
以上是否可行?
编辑:
我的目标是使用DataStore如下:
DataStore = struct;
DataStore('x').val1 = 5
DataStore('x').val2 = 7
DataStore('y').val1 = 15
DataStore('y').val2 = 17
答案 0 :(得分:4)
使用结构,可能使用动态字段名称。
或者:
DataStore.x.val1=6
DataStore.x.val2=9
替代动态字段名称(结果相同):
f='x'
DataStore.(f).val1=6
DataStore.(f).val2=9
如果val1
和val2
不仅仅是占位符,请使用数组替换它们:
DataStore.(f).val(1)=6
DataStore.(f).val(2)=9