OVH Cloud OVH Cloud

surcharge

14 réponses
Avatar
Nicolas Aunai
salut,


je souhaite surcharger l'opérateur '<<' afin d'afficher simplement un
objet par la ligne de code :

cout << Objet;



sachant que mon objet comprend entre autre deux tableaux, je ne vois
pas trop comment faire.


je l'ai fait pour un objet simple càd sans tableaux :

ostream &
operator<<(ostream &os, const Transition &trans)
{
os << "( depart : " << trans.depart <<", etiquette : "
<< trans.etiquette <<", arrivee : " << trans.arrivee;
return os;
}



cependant, si 'Objet' contient un tableau, il va me falloir une boucle
pour le parcourir..

qqn pourrait-il me donner un exemple ?

merci

--
Nico,
http://astrosurf.com/nicoastro
messenger : nicolas_aunai@hotmail.com

4 réponses

1 2
Avatar
Le Géant Vert
"Benoit Rousseau" a écrit dans le message de news:
3fd25936$0$3234$
Laurent DELEPINE wrote:
Tu as deux boucles. aussi je procederais differement. Je construirais
mes chaines dans des stringstreams dans la meme boucle et je les
enverrais en bloc apres la boucle (mais peut etre est ce du pinaillage
d'ex programmeur 3D rapide sur 486). Et naturellement les remarque de
mes collegues.
Quoi ? Ok, c'est Samedi soir... on boit et tout, mais bon... On essaye

de faire des phrases qui se tiennent entre elles, à défaut de phrases
non bourrées...


ben c'est tres clair il me semble... au lieu de faire des ostream << à tour
de bras, on bufferise dans un stringstream et une fois qu'on y a mis toutes
les données, on sort sur le ostream ; enfin, c'est ce que je comprends :)


Avatar
Benoit Rousseau
Le Géant Vert wrote:
"Benoit Rousseau" a écrit dans le message de news:
3fd25936$0$3234$

Laurent DELEPINE wrote:

Tu as deux boucles. aussi je procederais differement. Je construirais
mes chaines dans des stringstreams dans la meme boucle et je les
enverrais en bloc apres la boucle (mais peut etre est ce du pinaillage
d'ex programmeur 3D rapide sur 486). Et naturellement les remarque de
mes collegues.


Quoi ? Ok, c'est Samedi soir... on boit et tout, mais bon... On essaye
de faire des phrases qui se tiennent entre elles, à défaut de phrases
non bourrées...



ben c'est tres clair il me semble... au lieu de faire des ostream << à tour
de bras, on bufferise dans un stringstream et une fois qu'on y a mis toutes
les données, on sort sur le ostream ; enfin, c'est ce que je comprends :)



Ouais, en fait c'était moi qui était trop grisé pour pouvoir
comprendre... Moralité : Ne pas lire les news en rentrant du bar... :)


--
--------------------------------------------
Benoît Rousseau : roussebe at spray dot se
Jouez en programmant : http://realtimebattle.sourceforge.net/



Avatar
Le Géant Vert
"Benoit Rousseau" a écrit dans le message de news:
3fd30b09$0$3243$
Le Géant Vert wrote:
"Benoit Rousseau" a écrit dans le message de
news:


3fd25936$0$3234$

Laurent DELEPINE wrote:

Tu as deux boucles. aussi je procederais differement. Je construirais
mes chaines dans des stringstreams dans la meme boucle et je les
enverrais en bloc apres la boucle (mais peut etre est ce du pinaillage
d'ex programmeur 3D rapide sur 486). Et naturellement les remarque de
mes collegues.


Quoi ? Ok, c'est Samedi soir... on boit et tout, mais bon... On essaye
de faire des phrases qui se tiennent entre elles, à défaut de phrases
non bourrées...



ben c'est tres clair il me semble... au lieu de faire des ostream << à
tour


de bras, on bufferise dans un stringstream et une fois qu'on y a mis
toutes


les données, on sort sur le ostream ; enfin, c'est ce que je comprends
:)





Ouais, en fait c'était moi qui était trop grisé pour pouvoir
comprendre... Moralité : Ne pas lire les news en rentrant du bar... :)



LOL bar et forum ne font pas bon ménage on dirait ;)




Avatar
kanze
"Le Géant Vert" wrote in message
news:<bqtm5q$jc9$...
"Benoit Rousseau" a écrit dans le message de news:
3fd25936$0$3234$
Laurent DELEPINE wrote:
Tu as deux boucles. aussi je procederais differement. Je
construirais mes chaines dans des stringstreams dans la meme
boucle et je les enverrais en bloc apres la boucle (mais peut etre
est ce du pinaillage d'ex programmeur 3D rapide sur 486). Et
naturellement les remarque de mes collegues.


Quoi ? Ok, c'est Samedi soir... on boit et tout, mais bon... On
essaye de faire des phrases qui se tiennent entre elles, à défaut de
phrases non bourrées...


ben c'est tres clair il me semble... au lieu de faire des ostream << à
tour de bras, on bufferise dans un stringstream et une fois qu'on y a
mis toutes les données, on sort sur le ostream ; enfin, c'est ce que
je comprends :)


C'est à peu près ce que j'avais compris, moi aussi, mais j'avoue ne pas
comprendre pourquoi. Au moins que le but c'est de ralentir le code et
faire de l'offuscation, les deux à la fois.

--
James Kanze GABI Software mailto:
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16



1 2