Standard C++ Library Reference ISO/IEC (VERSION3)

If mode & ios_base::in is nonzero, the input buffer is accessible.
If mode & ios_base::out is nonzero, the output buffer is accessible.
basic_stringbuf::allocator_type
typedef Alloc allocator_type;
The type is a synonym for the template parameter Alloc.
basic_stringbuf::basic_stringbuf
basic_stringbuf(ios_base::openmode mode =
ios_base::in | ios_base::out);
basic_stringbuf(const basic_string<Elem, Tr, Alloc>& str,
ios_base::openmode mode =
ios_base::in | ios_base::out);
The first constructor stores a null pointer in all the pointers controlling the input buffer and the
output buffer. It also stores mode as the stringbuf mode.
The second constructor allocates a copy of the sequence controlled by the string object str. If
mode & ios_base::in is nonzero, it sets the input buffer to begin reading at the start of
the sequence. If mode & ios_base::out is nonzero, it sets the output buffer to begin
writing at the start of the sequence. It also stores mode as the stringbuf mode.
basic_stringbuf::char_type
typedef Elem char_type;
The type is a synonym for the template parameter Elem.
basic_stringbuf::int_type
typedef typename traits_type::int_type int_type;
The type is a synonym for traits_type::int_type.
basic_stringbuf::off_type
typedef typename traits_type::off_type off_type;
The type is a synonym for traits_type::off_type.