Standard C++ Library
Copyright 1998, Rogue Wave Software, Inc.
NAME
codecvt_byname
- A facet that includes code set conversion classification
facilities based on the named locales.
SYNOPSIS
#include <locale>
template <class charT> class codecvt_byname;
DESCRIPTION
The_codecvt_byname template includes the same functionality
as the codecvt_template, but specific to a particular named
locale. For a description of the member functions of
codecvt_byname, see the reference for codecvt._Only the con-
structor is described here.
INTERFACE
template <class fromT, class toT, class stateT>
class codecvt_byname : public codecvt<fromT, toT, stateT> {
public:
explicit codecvt_byname(const char*, size_t refs = 0);
protected:
~codecvt_byname(); // virtual
virtual result do_out(stateT&,
const internT*,
const internT*,
const internT*&,
externT*, externT*,
externT*&) const;
virtual result do_in(stateT&,
const externT*,
const externT*,
const externT*&,
internT*, internT*,
internT*&) const;
virtual result do_unshift(stateT&,
externT*, externT*,
externT*&) const;
virtual bool do_always_noconv() const throw();
virtual int do_length(const stateT&, const externT*,
const externT*, size_t max) const;
virtual int do_max_length() const throw();
virtual int do_encoding() const throw();
};
CONSTRUCTORS
explicit codecvt_byname(const char* name, size_t refs = 0);
Construct a codecvt_byname facet. The facet provides
codeset conversion relative to the named locale specified
by the name argument. If the refs argument is 0, destruc-
tion of the object is delegated to the locale, or
locales, containing it. This allows the user to ignore
lifetime management issues. On the other hand, if refs is
1, the object must be explicitly deleted: the locale does
not do so.
SEE ALSO
locale, facets, codecvt