我想创建一个以动态变量命名的结构。 类似的东西:
for t = 1:2
for b = 1:70
Father.t.b.A = A;
Father.t.b.C = C;
end
end
在查看Father
时,有Father.1.1.A
,Father.1.2.A
,...,Father.2.70.C
。
感谢您的帮助。
答案 0 :(得分:2)
MATLAB允许结构数组的索引类似于其他数组:
for t = 1:2
for b = 1:70
Father(t, b).A = A;
Father(t, b).C = C;
end
end
答案 1 :(得分:0)
您可以使用以下示例创建struct
(如excaza所述,不允许以数字开头的字段名称):
A = 1;
C = 3;
for b = 1:7
Father.(['b', num2str(b)]) = struct('A', A, 'C', C);
end
现在:
Father.b1.A
等于1
Father.b5.C
等于3