Mi chiedo se c'è un modo conveniente per aggiornare una struttura con i valori di un'altra struttura in Matlab. Ecco il codice, con l'uso di fieldnames
, numel
e un ciclo for
,aggiornare la struttura tramite un'altra struttura in Matlab
fn = fieldnames(new_values);
for fi=1:numel(fn)
old_struct.(fn{fi}) = new_values.(fn{fi});
end
Naturalmente, non voglio perdere i campi in old_struct
che non sono in new_values
, quindi non posso usa il semplice old_struct=new_values
.
L'aggiornamento di una struttura è qualcosa che potremmo voler fare in una singola linea in un interprete.
http://blogs.mathworks.com/loren/2009/10/15/concatenating-structs/ – Dan
Queste risposte non sono rilevanti (presupponendo alcuna collisione) o usano lo stesso metodo 'for' loop +' fieldnames' . Ciò tende a confermare il fatto che non esiste un modo più semplice, ma non fornisce una prova chiara;) – M1L0U