Hi,
I have a quetion about to refresh the ostringstream buffer: like this.
ostringstream buffer;
buffer << 245;
// then the buffer.str() = "245";
.....
//next I want using this buffer again but I don't need the content of buffer
before, so
buffer.flush()
buffer << 456;
//here I hope I can get "456" from buffer.str()
but the buffer still is 245456, seem the buffer.flush not take function?
why?
who can help me?
Thanks adanveced,
Bill
GuitarBill - 08 Jul 2004 05:03 GMT
flush() doesn't clear the stream; it writes any pending [buffered] data
(useful for file streams which hold written data in memory buffer and only
actually write to file when buffer gets full or someone calls flush).
Try seekp(0) to set insert position back to start, thereby emptying string?
Bill
> Hi,
>
[quoted text clipped - 21 lines]
>
> Bill
Jonathan Turkanis - 08 Jul 2004 05:33 GMT
> Hi,
> I have a quetion about to refresh the ostringstream buffer: like this.
>
[quoted text clipped - 9 lines]
> buffer << 456;
> //here I hope I can get "456" from buffer.str()
You should use
buffer.str("");
to reset the contents of the buffer to an empty string.
Jonathan