Standard C++ Library Reference ISO/IEC (VERSION3)
const char *first, const char *last) const;
char toupper(char ch) const;
const char *toupper(char *first, char *last) const;
char tolower(char ch) const;
const char *tolower(char *first, char *last) const;
char widen(char byte) const;
const char *widen(char *first, char *last,
char *dest) const;
char narrow(char ch, char dflt) const;
const char *narrow(const char *first,
const char *last, char dflt, char *dest) const;
static locale::id id;
protected:
~ctype();
virtual char do_toupper(char ch) const;
virtual const char *do_toupper(char *first,
char *last) const;
virtual char do_tolower(char ch) const;
virtual const char *do_tolower(char *first,
char *last) const;
virtual char do_widen(char ch) const;
virtual const char *do_widen(char *first, char *last,
char *dest) const;
virtual char do_narrow(char ch, char dflt) const;
virtual const char *do_narrow(const char *first,
const char *last, char dflt, char *dest) const;
const mask *table() const throw();
static const mask *classic_table() const throw();
static const size_t table_size;
};
The class is an explicit specialization of template class ctype for type char. Hence, it describes an object that can serve
as a locale facet, to characterize various properties of a ``character'' (element) of type char. The explicit specialization
differs from the template class in several ways:
An object of class ctype<char> stores a pointer to the first element of a ctype mask table, an array of
UCHAR_MAX + 1 elements of type ctype_base::mask. It also stores a boolean object that indicates whether
the array should be deleted (using operator delete[]) when the ctype<Elem> object is destroyed.
●
Its sole public constructor lets you specify tab, the ctype mask table, and del, the boolean object that is true if
the array should be deleted when the ctype<char> object is destroyed -- as well as the usual reference-count
parameter refs.
●
The protected member function table() returns the stored ctype mask table.●
The static member object table_size specifies the minimum number of elements in a ctype mask table.●
The protected static member function classic_table() returns the ctype mask table appropriate to the "C"
locale.
●
There are no protected virtual member functions do_is, do_scan_is, or do_scan_not. The corresponding
public member functions perform the equivalent operations themselves.
●
The member functions do_narrow and do_widen simply copy elements unaltered.●