Question

Comment ajouter des données pour les objets OstringStream? En supposant:

ostringstream oss;
oss << '0x11';

Comment puis-je le définir pour jouer oss << 0x22 du dernier élément connu automatiquement? J'ai lu que j'ai besoin de définir un drapeau, mais comment puis-je le faire?

Éditer: Désolé d'être très très vague à propos de la question. Pro vrai le café s'use. Extension de ma question ci-dessus:

Fait ostringstream oss(osstringstream::app) Le définit pour ajouter à chaque fois? Mon objectif est de créer une chaîne.

Était-ce utile?

La solution

Il n'est pas précisé ce que le app Le drapeau fait lorsqu'il est passé à unostringstream constructeur. Ce drapeau est uniquement pertinent pourofstream. D'autre part, ostringstream est Un flux, et à ce titre, les données sont toujours insérées après les données précédemment insérées, à condition que aucune recherche ne se soit produite entre-temps. Il s'agit, après tout, de la définition d'un flux de sortie.

Autres conseils

Lorsque vous créez un stringstream Comme dans votre premier exemple, il ajoutera par défaut.

C'est la différence entre ate et app comme mode ouvert. ate positionner à la fin après l'ouverture, puis laisser la position d'écriture seule (donc si vous le voulez, vous pouvez écrire n'importe où), app Assurez-vous que toutes les écrits se font à la fin du flux.

EDIT: Dans la pratique, se comporte différemment pour STRINGSTREAM, alors ne comptez pas sur elle.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top