|
|
|
|
Strumenti |
25-04-2018, 19:54 | #1 |
Junior Member
Iscritto dal: Feb 2017
Messaggi: 15
|
[C++] overloading operatori di stream
Per una classe Persona (string Nome, char* Cognome, char CF, int Età) ho scritto l'overloading degli operatori di stream in questo modo
Non ho capito l'utilità di ritornare i valori in e out, le funzioni lavorano anche senza |
26-04-2018, 08:10 | #2 |
Member
Iscritto dal: Sep 2008
Città: Milano
Messaggi: 126
|
In questo modo puoi effettuare il chaining:
Codice:
cout << "hello" << "world"; |
26-04-2018, 14:53 | #3 |
Junior Member
Iscritto dal: Feb 2017
Messaggi: 15
|
|
27-04-2018, 08:24 | #4 |
Member
Iscritto dal: Sep 2008
Città: Milano
Messaggi: 126
|
|
27-04-2018, 11:54 | #5 |
Junior Member
Iscritto dal: Feb 2017
Messaggi: 15
|
Guarda, ti assicuro che me lo fa passare lo stesso
|
27-04-2018, 12:42 | #6 |
Member
Iscritto dal: Sep 2008
Città: Milano
Messaggi: 126
|
Sì, ma non è corretto (che compilatore usi? hai i warning attivi? configurazione debug/release?).
Una funzione dichiarata non void deve restituire esplicitamente qualcosa. Se il return viene omesso, il risultato è "undefined behavior" ed è categoricamente sconsigliabile farci affidamento: può funzionare sì oppure no oppure solo in certe circostanze ma è assolutamente a caso. |
27-04-2018, 15:10 | #7 |
Junior Member
Iscritto dal: Feb 2017
Messaggi: 15
|
Giusto, non avevo considerato il tipo di ritorno
Grazie mille |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:45.