Si grazie per l'accorgimento ,piccolo errore di distrazione..
non è che potresti dirmi se ho fatto bene o corregermi nel caso??, con particolare attenzione sull 'operatore di uguaglianza.Gentilmente.![]()
Come mai prima hai scritto che la classe avrebbe bisogno solo dell'operatore di ug?
Cioe' quali sono i casi in cui la classe ha bisogno solo dell'operatore di uguaglianza.?
codice:automobile::automobile(const automobile& a) { modello=a.modello; for(list<componente>::const_iterator it=a.componenti.begin() ; it!=a.componenti.end() ; it++) componenti.push_back(*it); } automobile& automobile::operator=(const automobile& a) { modello = a.modello; for(list<componente>::const_iterator it=a.componenti.begin() ; it!=a.componenti.end() ; it++) componenti.push_back(*it); } bool automobile::operator == (const automobile& a) { list<componente>::iterator it2=componenti.begin(); for(list<componente>::const_iterator it1=a.componenti.begin() ; it1!=a.componenti.end() ; it1++) { if(*it2 !=*it1 ) return false; it2++; } if( modello== a.modello ) return true; return false; }![]()

Rispondi quotando