class template
<sstream>
std::basic_ostringstream
template < class charT, // basic_ostringstream::char_type class traits = char_traits<charT>, // basic_ostringstream::traits_type class Alloc = allocator<charT> // basic_ostringstream::allocator_type > class basic_ostringstream;
Output string stream
- ios_base
- basic_ios
- basic_ostream
- basic_ostringstream
Output stream class to operate on strings.
Objects of this class use a string buffer that contains a sequence of characters. This sequence of characters can be accessed directly as a basic_string object, using member str.
Characters can be inserted into the stream with any operation allowed on output streams.
Apart from the internal string buffer, objects of these classes keep a set of internal fields inherited from ios_base and basic_ios:
| field | member functions | description | |
|---|---|---|---|
| Formatting | format flags | flags setf unsetf | A set of internal flags that affect how certain input/output operations are interpreted or generated. See member type fmtflags. |
| field width | width | Width of the next formatted element to insert. | |
| display precision | precision | Decimal precision for the next floating-point value inserted. | |
| locale | getloc imbue | The locale object used by the function for formatted input/output operations affected by localization properties. | |
| fill character | fill | Character to pad a formatted field up to the field width (width). | |
| State | error state | rdstate setstate clear | The current error state of the stream. Individual values may be obtained by calling good, eof, fail and bad. See member type iostate. |
| exception mask | exceptions | The state flags for which a failure exception is thrown. See member type iostate. | |
| Other | callback stack | register_callback | Stack of pointers to functions that are called when certain events occur. |
| extensible arrays | iword pword xalloc | Internal arrays to store objects of type long and void*. | |
| tied stream | tie | Pointer to output stream that is flushed before each i/o operation on this stream. | |
| stream buffer | rdbuf | Pointer to the associated basic_streambuf object, which is charge of all input/output operations. |
Template parameters
- charT
- Character type used by both the stream and the basic_string objects it accepts or generates.
This shall be a non-array POD type.
Aliased as member type basic_ostringstream::char_type. - traits
- Character traits class that defines essential properties of the characters used by stream and string objects (see char_traits).
traits::char_type shall be the same as charT.
Aliased as member type basic_ostringstream::traits_type. - Alloc
- Type of the allocator object used to define the storage allocation model for the basic_string objects.
By default, the allocator class template is used, which defines the simplest memory allocation model and is value-independent.
Aliased as member type basic_ostringstream::allocator_type.
Template instantiations
- ostringstream
- Output string stream (class)
- wostringstream
- Output string stream (wide) (class)
Member types
The class declares the following member types:| member type | definition | notes |
|---|---|---|
| char_type | The first template parameter (charT) | |
| traits_type | The second template parameter (traits) | defaults to: char_traits<charT> |
| allocator_type | The third template parameter (Alloc) | defaults to: allocator<charT> |
| int_type | traits_type::int_type | |
| pos_type | traits_type::pos_type | generally, the same as streampos |
| off_type | traits_type::off_type | generally, the same as streamoff |
These member types are inherited from its base classes basic_ostream and ios_base:
- event
- Type to indicate event type (public member type)
- event_callback
- Event callback function type (public member type)
- failure
- Base class for stream exceptions (public member class)
- fmtflags
- Type for stream format flags (public member type)
- Init
- Initialize standard stream objects (public member class)
- iostate
- Type for stream state flags (public member type)
- openmode
- Type for stream opening mode flags (public member type)
- seekdir
- Type for stream seeking direction flag (public member type)
- sentry
- Prepare stream for output (public member class)
Public member functions
- (constructor)
- Construct object (public member function)
- str
- Get/set content (public member function)
- operator=
- Move assignment (public member function)
- swap
- Swap internals (public member function)
Public member functions inherited from basic_ostream
- operator<<
- Insert formatted output (public member function)
- put
- Put character (public member function)
- write
- Write block of data (public member function)
- tellp
- Get position in output sequence (public member function)
- seekp
- Set position in output sequence (public member function)
- flush
- Flush output stream buffer (public member function)
Public member functions inherited from basic_ios
- good
- Check whether state of stream is good (public member function)
- eof
- Check whether eofbit is set (public member function)
- fail
- Check whether failbit or badbit is set (public member function)
- bad
- Check whether badbit is set (public member function)
- operator!
- Evaluate stream (not) (public member function)
- operator bool
- Evaluate stream (public member function)
- rdstate
- Get error state flags (public member function)
- setstate
- Set error state flag (public member function)
- clear
- Set error state flags (public member function)
- copyfmt
- Copy formatting information (public member function)
- fill
- Get/set fill character (public member function)
- exceptions
- Get/set exceptions mask (public member function)
- imbue
- Imbue locale (public member function)
- tie
- Get/set tied stream (public member function)
- rdbuf
- Get/set stream buffer (public member function)
- narrow
- Narrow character (public member function)
- widen
- Widen character (public member function)
Public member functions inherited from ios_base
- flags
- Get/set format flags (public member function)
- setf
- Set specific format flags (public member function)
- unsetf
- Clear specific format flags (public member function)
- precision
- Get/Set floating-point decimal precision (public member function)
- width
- Get/set field width (public member function)
- imbue
- Imbue locale (public member function)
- getloc
- Get current locale (public member function)
- xalloc
- Get new index for extensible array [static] (public static member function)
- iword
- Get integer element of extensible array (public member function)
- pword
- Get pointer element of extensible array (public member function)
- register_callback
- Register event callback function (public member function)
- sync_with_stdio
- Toggle synchronization with cstdio streams [static] (public static member function)
Non-member function overloads
- swap
- Swap output string streams (function template)