Une fonction ostream operator vers une methode

Résolu
madhack Messages postés 23 Date d'inscription lundi 28 novembre 2016 Statut Membre Dernière intervention 27 avril 2017 - 26 avril 2017 à 21:31
madhack Messages postés 23 Date d'inscription lundi 28 novembre 2016 Statut Membre Dernière intervention 27 avril 2017 - 27 avril 2017 à 12:39
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

cptpingu Messages postés 3840 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 23 août 2024 126
26 avril 2017 à 23:29
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;
0
madhack Messages postés 23 Date d'inscription lundi 28 novembre 2016 Statut Membre Dernière intervention 27 avril 2017
27 avril 2017 à 12:39
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.
0
Rejoignez-nous