Avere un problema con questo particolare metodo e non si sa come risolverlo! L'errore che sto ricevendo è il sopra:Impossibile accedere al membro privato dichiarato nella classe 'std :: basic_ios <_Elem, _Traits>'
"C2248 di errore: 'std :: basic_ios < _Elem, _Traits> :: basic_ios': non può membro privato di accesso dichiarato nella classe 'std :: basic_ios < _Elem, _Traits>' C: \ Programmi \ Microsoft Visual Studio 10.0 \ VC \ include \ ostream 604"
il mio metodo è:
ostream operator<<(ostream & stream, ProcessClass const & rhs)
{
stream << rhs.name_;
return stream;
}
E nell'intestazione:
friend std::ostream operator<<(std::ostream & stream, ProcessClass const & rhs);
Qualche idea su come risolvere questo? Penso che sia qualcosa a che fare con il passare per riferimento invece che con il valore ... ma sono un po 'confuso!
Ora la cosa confusa è (e non sono sicuro di ciò che mi manca) è quando c aggiungo a sopra (cosa che avevo provato prima) poi ho un errore ... 'errore C2556: 'std :: ostream & operatore << (std :: ostream &, const ProcessClass &)': funzione sovraccaricata diversa solo per tipo di ritorno da 'std :: ostream operator << (std :: ostream &, const ProcessClass &)' ' NB. Ho leggermente modificato il codice, ma seguo il codice come sopra, l'errore viene prodotto in entrambi i modi durante la compilazione. – Fids
@Fids: hai definito due volte nella tua classe. Perché l'hai definito due volte? – Nawaz