1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
#include <iostream>
#include <string>
using namespace std;
class Personne {
private:
string nom, prenom;
public:
Personne(string monNom, string monPrenom) : nom(monNom), prenom(monPrenom){}
string toString()
{
return nom + " " + prenom + "\n";
}
void toString(ostream &out)
{
out << toString();
}
void toString(string &str)
{
str = str + toString();
}
};
ostream &operator<<( ostream &out, Personne &p )
{
p.toString(out) ;
return out;
}
string &operator+( string str, Personne &p )
{
p.toString(str) ;
return str;
}
int main()
{
Personne p("Simpson", "Homer");
cout << p ; // affichage de la personne
string s = "Il s'appelle : " + p; //concaténation
cout << s; // affichage de la chaine concaténée
return 0;
} |
Partager