matlab中的动态变量名

时间:2015-04-09 18:09:16

标签: matlab variables dynamic field structure

我希望扩展一个结构(bac),其中包含来自另一个结构(BT)的多个字段。这些字段的名称作为字符串包含在单元格数组(adds)中。

这就是我现在所拥有的(显然不能完成这项工作,解释这篇文章):

for i=1:numel(adds)
    eval(genvarname('bac.',adds{i})) = eval(strcat('BT.',adds{i}));
end

我也尝试使用sprintf,这似乎对我不起作用。我有信心你们其中一个人知道怎么做,因为我觉得这应该很容易。

1 个答案:

答案 0 :(得分:5)

执行此操作的最佳方法是使用dynamic field names

for i=1:numel(adds)
    bac.(adds{i}) = BT.(adds{i});
end