ostringstream effacer

Le
Ael Rowan Terence
Pardonnez moi d'avance, je sais que le sujet à déjà été abordé, mais j'ai du
mal à comprendre.

Quelle procédure employer pour effacer le contenu d'un ostringstrem ?
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 7
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JBB
Le #308385
Pardonnez moi d'avance, je sais que le sujet à déjà été abordé, mais j'ai du
mal à comprendre.

Quelle procédure employer pour effacer le contenu d'un ostringstrem ?


A quoi ca sert d'affacer le contenue d'un ostringstream il suffit d'en prendre un autre. non?


Cyrille
Le #308353
Pardonnez moi d'avance, je sais que le sujet à déjà été abordé, mais j'ai du
mal à comprendre.

Quelle procédure employer pour effacer le contenu d'un ostringstrem ?


ostringstream oss;
(...)
oss.str(""); // défini le contenu à "", donc le vide.

--
Cyrille

Cyrille
Le #308352
Pardonnez moi d'avance, je sais que le sujet à déjà été abordé, mais j'ai du
mal à comprendre.

Quelle procédure employer pour effacer le contenu d'un ostringstrem ?


A quoi ca sert d'affacer le contenue d'un ostringstream il suffit d'en prendre un autre. non?



Pour éviter de créer des objets pour rien, peut-être, dans un contexte
où ça serait un problème.

--
Cyrille


Sylvain
Le #308351
JBB wrote on 02/07/2007 18:24:

Quelle procédure employer pour effacer le contenu d'un ostringstrem ?

A quoi ca sert d'affacer le contenu d'un ostringstream il suffit d'en

prendre un autre. non?


hmmm, ça a un rapport avec le non gaspillage des ressources et le
développement (informatique) durable ?

Sylvain.


Loïc Joly
Le #308350

Pardonnez moi d'avance, je sais que le sujet à déjà été abordé, mais j'ai du
mal à comprendre.

Quelle procédure employer pour effacer le contenu d'un ostringstrem ?



ostringstream oss;
(...)
oss.str(""); // défini le contenu à "", donc le vide.



Mais ne repositionne pas les flags d'état, ni ceux de formattage.



--
Loïc


Ael Rowan Terence
Le #308348
"Cyrille" news:46894db1$0$21150$
Pardonnez moi d'avance, je sais que le sujet à déjà été abordé, mais
j'ai du


mal à comprendre.

Quelle procédure employer pour effacer le contenu d'un ostringstrem ?


ostringstream oss;
(...)
oss.str(""); // défini le contenu à "", donc le vide.


Merci.


James Kanze
Le #308317
On Jul 3, 11:02 am, "Ael Rowan Terence"
"James Kanze" On Jul 2, 9:13 pm, Cyrille
Et ça serait quel contexte ? Si on veut un nouveau flux, la


Mais la question n'était pas "comment faire pour obtenir un
nouveau flux ?" Mais bien comment faire pour effacer un
ostringstream.


Mais ça veut dire quoi, effacer un ostringstream ?

façon la plus simple et la plus naturelle d'en obtenir un, c'est
d'en prendre un nouveau, et non d'essayer de réutiliser un
ancien dont on ne connaît pas trop l'état.


L'état, en l'occurence, je suis sensé le connaitre.


Pourquoi, et comment ?

--
James Kanze (GABI Software) email:
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34


Ael Rowan Terence
Le #308316
"James Kanze" news:
On Jul 3, 11:02 am, "Ael Rowan Terence"

Mais ça veut dire quoi, effacer un ostringstream ?



oss << "toto" ;
[....]
oss << "+"
[....]
oss << "titi" ;
[....]

// effacer oss .str ("") ;


L'état, en l'occurence, je suis sensé le connaitre.
Pourquoi, et comment ?



Parce que l'ostringstream ne va pas, de lui même, changer d'état .

Je veux juste, grosso modo, l'utiliser quasiment aussi simplement que
l'exemple donné plus haut.


JBB
Le #308315
"James Kanze" news:
On Jul 3, 11:02 am, "Ael Rowan Terence"

Mais ça veut dire quoi, effacer un ostringstream ?



oss << "toto" ;
[....]
oss << "+"
[....]
oss << "titi" ;
[....]

// effacer > oss .str ("") ;


L'état, en l'occurence, je suis sensé le connaitre.
Pourquoi, et comment ?



Parce que l'ostringstream ne va pas, de lui même, changer d'état .

Je veux juste, grosso modo, l'utiliser quasiment aussi simplement que
l'exemple donné plus haut.


ostringstream oss;

...
//remettre a zero
oss = ostringstream();

ca le ferait pas ça?



James Kanze
Le #308313
On Jul 3, 3:49 pm, "Ael Rowan Terence"
"James Kanze" On Jul 3, 11:02 am, "Ael Rowan Terence"
Mais ça veut dire quoi, effacer un ostringstream ?


oss << "toto" ;
[....]
oss << "+"
[....]
oss << "titi" ;
[....]

// effacer =
oss .str ("") ;


Ce n'est pas vraiment ce que j'entends par « effacer », mais
ce n'était pas ma question. Ma question, c'est ce que tu
entendais par effacer. Remettre à son état initial ? Vider la
chaîne, sans changer quoique ce soit d'autre ? Vider la chaîne
et en libérer la mémoire qui lui est associée ?

On efface les éléments dans une collection, parce que la norme a
choisi ce mot (l'anglais « erase ») pour le faire, mais même
là, je trouve qu'il ne convient pas réelement. Par extension,
dans un flux, on pourrait effacer le contenu (mais en général,
ce n'est pas supporter), l'état (plus d'erreur), les paramètres
du formattage, la liaison avec le streambuf, etc., etc. Un flux,
c'est plus complexe qu'une collection, et il y a beaucoup de
choses qu'on pourrait y effacer. Et dans un sens réel, les
données qu'on y a écrit n'en font pas partie ; une fois
écrites, elles sont ailleurs. C'est l'abstraction d'un flux.

L'état, en l'occurence, je suis sensé le connaitre.
Pourquoi, et comment ?



Parce que l'ostringstream ne va pas, de lui même, changer d'état .


Certaines parties, peut-être bien. Mais surtout, en
programmation, c'est bien que tu ne sois pas obligé à tenir
compte de tout ce qui s'est passé ailleurs, à tout instant.

Je veux juste, grosso modo, l'utiliser quasiment aussi
simplement que l'exemple donné plus haut.


Dans quel but, c'est ça ma question. Pourquoi est-ce que
l'utilisation d'un nouveau flux ne te convient pas ? C'est
quand même la solution « naturelle ».

--
James Kanze (GABI Software) email:
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34



Publicité
Poster une réponse
Anonyme