我遇到了一些问题。 我在循环中动态创建变量。
for i=1:nbr
assignin('base', ['x_',num2str(i)],0)
end
之后,我想将函数的结果放在这些变量中。但工作区底部的变量不会直接更新,所以我有一个错误"未定义的函数或变量"。我该如何解决我的问题?
for i=1:nbr
['x_',num2str(i)]= fonction(input);
end
提前谢谢
最好的关注
答案 0 :(得分:1)
相反,请使用单元格数组:
x{i} = function(input);
然后将整个单元格数组返回给调用者,这样您就不需要使用assignin
。整个函数体看起来像这样:
function x = myfunction(someinput)
for i=1:nbr
x{i} = someotherfunction(input);
end
% Cell array x is returned from the function