Matlab хранить / изменять ссылки на переменные в матрице
Я пытаюсь написать функцию сохранения / загрузки для приложения с кучей свойств в Matlab. Сохранение работает нормально, но у меня возникают проблемы с загрузкой. У меня проблемы с этим:
loadlist=['app.starting_height','app.dragenabled','app.heading'...];
n=1;
for(n=1:length(loadlist))
loadlist(1,n)=savelist(1,n);
То, что я хочу сделать, это вместо изменения значений в loadlist (loadlist(1,n), изменить свойства, на которые они ссылаются (app.startingheight и т. Д.). У меня есть идея попробовать использовать маркеры, но я не совсем конечно, как это будет работать. Любая помощь будет оценена.
Спасибо!
1 ответ
Решение
Вы можете генерировать имена полей из переменных, так что-то вроде этого:
loadlist=["app.starting_height","app.dragenabled","app.heading"...];
for elem = loadlist
field_names = split(elem, '.');
app.(fieldnames(2)) = ...
должно сработать.