Мне интересно, есть ли удобный способ для обновить структуру со значениями другой структуры в Matlab. Вот код, с использованием fieldnames
, numel
for
и петли,Обновление структуры через другую структуру в Matlab
fn = fieldnames(new_values);
for fi=1:numel(fn)
old_struct.(fn{fi}) = new_values.(fn{fi});
end
Конечно, я не хочу потерять поля в old_struct
, которые не в new_values
, так что я не могу используйте простой old_struct=new_values
.
Обновление структуры - это то, что мы можем сделать в одной короткой строке в интерпретаторе.
http://blogs.mathworks.com/loren/2009/10/15/concatenating-structs/ – Dan
Ответы на тезисы либо не актуальны (при отсутствии столкновения), либо используют один и тот же метод 'for' loop +' fieldnames' , Это, как правило, подтверждает тот факт, что нет более простого способа, но не дает четких доказательств;) – M1L0U