Sto implementando una funzione nella quale una serie di oggetti (con attributo nome, codice) e' inserita in un contenitore set1:
voglio confrontare il codice di ogni oggetto con gli oggetti di una altro contenitore set2 (con attributi nome, codice); se corrisponde, voglio aggiornare l'attributo nome del set1.
La ho impostata cosi' :
[code]
set <tipo set1>::iterator it1;
set <tipo set2>::iterator it2;
for( it1= set1.begin(); it1!=set1.end(); it1++)
{
if((*it1).getCodice()== (*it2).getCodice())
{
nome=(*it2).getNome();
(*it1).setNome(nome);
}
}
[\code]
nelle classi relative agli oggetti inseriti nei set avevo dichiarato come public
int getCodice() {return codice;}
e
void setNome(string n) const {nome=n;}
mi restituisce l'errore :
'error passing 'const "tipo set1"' as 'this' argument of void setNome, discards qualifiers
Non riesco a capire il significato dell'errore.Qualcuno ha un'idea di dove stia sbagliando?
Grazie in anticipo