Une fonction ostream operator vers une methode [Résolu]

Signaler
Messages postés
24
Date d'inscription
lundi 28 novembre 2016
Statut
Membre
Dernière intervention
27 avril 2017
-
Messages postés
24
Date d'inscription
lundi 28 novembre 2016
Statut
Membre
Dernière intervention
27 avril 2017
-
Bonjour,
Je vous joint un schéma ou j'ai essayer de comprendre comment fonctionnait le code.
Il est un peu crade et je suis la pour le développer si besoin.

La question est ma referance sur la "variable" ostream fluxPersonnage est créer lors de l'appel à la fonction par :

std::cout<<a<<std::endl;

et "retourné" par la methode afficher de l'objet personnage ?
ou je n'ai pas tout compris voir rien du tout ?

2 réponses

Messages postés
3809
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
22 avril 2020
105
Bonjour.

Essaie à l'avenir de poster du code, pas d'image de code. C'est peu pratique (impossible de copier-coller, impossible de changer la taille si peu visible, lourd à charger sur mobile, etc...).

La raison pour laquelle on retourne un std::ostream, c'est pour faire du chaînage.

Ceci:
std::cout << a << std::endl;

Equivaut à:
std::cout.operator<<(a.operator<<(std::endl));


Si tu ne retournait pas de std::ostream, alors tu pourrais faire un "a << std::endl;", mais pas un std::cout << a;
Messages postés
24
Date d'inscription
lundi 28 novembre 2016
Statut
Membre
Dernière intervention
27 avril 2017

Bonjour
Il est possible d'ouvrir l'image dans un nouvelle onglet ou alors le lien ci-dessous :
http://prntscr.com/f1ekg7
Je vois "approximativement" le principe, je voulais juste me créer un schéma de mémoire pour visualiser le domino du code.
Merci pour l'information.
A bientôt.