Se posti codice, usa i tag CODE o si fa fatica a leggerlo.
A vedere queste righe il cctor è corretto. Occorre però vedere i char* (nome e cognome).Originariamente inviato da Angelo000
codice:prezzo.resize(f.prezzo.size()); copy(f.prezzo.begin(), f.prezzo.end(), prezzo.begin());
Se fossero std::string potresti quasi nemmeno scrivere il cctor.
Sotto.
Intanto come assegni in setNome() e setCognome le rispettive variabili?
Comunque ricorda che std::list non ha operator[] quindi dovresti cambiare il codice perché lavori con la funzione push_back() presente sia in std::vector sia in std::list.
[/QUOTE]codice:istream &operator>>(istream &in, Fattura &r) { char temp[100]; int app, num; in>>temp; r.setNome(temp); in>>temp; r.setCognome(temp); in>>app; r.setIva(app); in>>num; r.prezzo.resize(num); for(int i=0; i<num; i++){ in>>r.prezzo[i]; } in>>num; r.quantita.resize(num); for(int i=0; i<num; i++){ in>>r.quantita[i]; } in>>num; r.descrizione.resize(num); for(int i=0; i<num; i++){ in>>(r.descrizione[i]); } return in; }

Rispondi quotando