Class template wbuffer_convert looks like a wide stream buffer, but
performs all its I/O through an underlying byte stream buffer that you
specify when you construct it.
Like class template wstring_convert, it
lets you specify a code conversion facet to perform the conversions,
without affecting any streams or locales.
The class template describes a stream buffer that controls the
transmission of elements of type Elem, whose character traits are
described by the class Tr, to and from a byte stream buffer of type
streambuf.
Conversion between a sequence of Elem values and
multibyte sequences is performed by an object of class
Codecvt, which shall meet the requirements
of the standard code-conversion facet codecvt<Elem, char, mbstate_t>.
Effects: The constructor constructs a stream buffer object, initializes
bufptr to bytebuf, initializes cvtptr
to pcvt, and initializes cvtstate to state.