class template
<locale>

std::ctype_byname

template <class charT> class ctype_byname;
Character type facet

The ctype_byname standard facet overrides ctype virtual members to implement its semantics for particular named locales.

Its public interface is the same as ctype, except that its constructor takes an additional std_name argument:

1
explicit ctype_byname (const char* std_name, size_t refs = 0);
1
2
explicit ctype_byname (const char* std_name, size_t refs = 0);
explicit ctype_byname (const string& std_name, size_t refs = 0);

Where std_name is the name of a C locale. The C locales available depend on the system and library implementation, but at least the following are guaranteed to exist on all implementations:
locale namedescription
"C"Minimal "C" locale (the same as locale::classic)
""The environment's default locale

Specializations

At least the following specializations of this template are provided in all library implementations:
specialization
ctype_byname<char>
ctype_byname<wchar_t>

Note that, just like for ctype, the char specialization of ctype_byname has a particular implementation (see ctype).