c++ lista dentro map problema
Inviato: mar 7 mag 2013, 10:29
Salve a tutti, mi sto affacciando nel mondo c++. Per risolvere un problema ho una map di oggetti Foo i quali contengono al loro interno una lista di altri oggetti Custom diversi dai precedenti.
Per intenderci:
.....
class Foo{
.....
private:
std::list <Custom> lista;
.....
};
....
main(){
...
std::map<string, Foo> mappa;
...
};
Il mio problema è nell'aggiunta di elementi alle varie liste degli elementi Foo infatti quando dalle funzioni di inserimento in lista inserisco uno o più elementi, al ritorno al main non ci sono elementi nella lista. Questo presumo accada in quanto prima cerco l'elemento Foo che mi serve tramite .find(key) e ne creo una copia su cui lavorare e, essendo una copia, l'elemento della map non viene in realtà modificato.
Vorrei qualche consiglio su come agire in questo caso sperando di essermi spiegato al meglio!
Per intenderci:
.....
class Foo{
.....
private:
std::list <Custom> lista;
.....
};
....
main(){
...
std::map<string, Foo> mappa;
...
};
Il mio problema è nell'aggiunta di elementi alle varie liste degli elementi Foo infatti quando dalle funzioni di inserimento in lista inserisco uno o più elementi, al ritorno al main non ci sono elementi nella lista. Questo presumo accada in quanto prima cerco l'elemento Foo che mi serve tramite .find(key) e ne creo una copia su cui lavorare e, essendo una copia, l'elemento della map non viene in realtà modificato.
Vorrei qualche consiglio su come agire in questo caso sperando di essermi spiegato al meglio!