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

which converts between wchar_t and char sequences.
codecvt::always_noconv
bool always_noconv() const throw();
The member function returns do_always_noconv().
codecvt::codecvt
explicit codecvt(size_t refs = 0);
The constructor initializes its locale::facet base object with locale::facet(refs).
codecvt::do_always_noconv
virtual bool do_always_noconv() const throw();
The protected virtual member function returns true only if every call to do_in or do_out returns noconv. The
template version always returns true.
codecvt::do_encoding
virtual int do_encoding() const throw();
The protected virtual member function returns:
-1, if the encoding of sequences of type extern_type is state dependent
0, if the encoding involves sequences of varying lengths
N, if the encoding involves only sequences of length N
codecvt::do_in
virtual result do_in(Statype state&,
const Byte *first1, const Byte *last1, const Byte *next1,
Elem *first2, Elem *last2, Elem *next2);
The protected virtual member function endeavors to convert the source sequence at [first1, last1) to a
destination sequence that it stores within [first2, last2). It always stores in next1 a pointer to the first
unconverted element in the source sequence, and it always stores in next2 a pointer to the first unaltered element in the
destination sequence.
state must represent the initial conversion state at the beginning of a new source sequence. The function alters its
stored value, as needed, to reflect the current state of a successful conversion. Its stored value is otherwise unspecified.
The function returns:
codecvt_base::error if the source sequence is ill formed
codecvt_base::noconv if the function performs no conversion
codecvt_base::ok if the conversion succeeds
codecvt_base::partial if the source is insufficient, or if the destination is not large enough, for the
conversion to succeed
The template version always returns noconv.