Я пытаюсь присвоить значения динамической переменной, используя eval
в Matlab. Я использую Matlab R2013a. Я могу легко сделать это в более старых версиях, но не в R2013a. Да, я знаю о подводных камнях использования eval
и т. д. Я также пробовал assignin
, но это не увенчалось успехом.
Bins = [10 100 20];
Cols = numel(Bins);
for i = 1:Cols
eval(['Var' num2str(i) ' = Cols+i']);
end
Ошибка --> Попытка добавить "Var" в статическое рабочее пространство.
Желаемый результат
Var1 = 4
Var2 = 5
Var3 = 6
eval
. Так почему бы вам не написать это как массив?Var(i) = Cols+i;
- person Peter   schedule 31.10.2013