ctype<char> Class
Die Klasse ist eine explizite Spezialisierung von Vorlagenklasse ctype<CharType> zum Typ char, und beschreibt ein Objekt, das als Gebietsschemafacet dienen kann, verschiedene Eigenschaften eines Zeichens des Typs char zu kennzeichnen.
template<> class ctype<char>
: public ctype_base
{
public:
typedef char _Elem;
typedef _Elem char_type;
bool is(
mask _Maskval,
_Elem _Ch
) const;
const _Elem* is(
const _Elem *_First,
const _Elem *_Last,
mask *_Dest
) const;
const _Elem* scan_is(
mask _Maskval,
const _Elem *_First,
const _Elem *_Last
) const;
const _Elem* scan_not(
mask _Maskval,
const _Elem *_First,
const _Elem *_Last
) const;
_Elem tolower(
_Elem _Ch
) const;
const _Elem* tolower(
_Elem *_First,
const _Elem *_Last
) const;
_Elem toupper(
_Elem _Ch
) const;
const _Elem* toupper(
_Elem *_First,
const _Elem *_Last
) const;
_Elem widen(
char _Byte
) const;
const _Elem* widen(
const char *_First,
const char *_Last,
_Elem *_Dest
) const;
const _Elem* _Widen_s(
const char *_First,
const char *_Last,
_Elem *_Dest,
size_t _Dest_size
) const;
_Elem narrow(
_Elem _Ch,
char _Dflt = '\0'
) const;
const _Elem* narrow(
const _Elem *_First,
const _Elem *_Last,
char _Dflt,
char *_Dest
) const;
const _Elem* _Narrow_s(
const _Elem *_First,
const _Elem *_Last,
char _Dflt,
char *_Dest,
size_t _Dest_size
) const;
static locale::id& id;
explicit ctype(
const mask *_Table = 0,
bool _Deletetable = false,
size_t _Refs = 0);
protected:
virtual ~ctype();
//other protected members
};
Hinweise
Die explizite Spezialisierung unterscheidet sich von der Vorlagenklasse in mehrfacher Hinsicht:
Ein Objekt von Klasse ctype<char> speichert einen Zeiger auf das erste Element einer Cmaskentabelle, ein Array von UCHAR_MAX + 1 Elemente des Typs ctype_base::mask.Sie speichert auch ein boolesches Objekt, das angibt, ob das Array gelöscht werden soll (mithilfe operator delete[]) wenn das ctype<Elem> Objekt zerstört wird.
Sein einziger öffentlichen Konstruktor können Sie tab, die Cmaskentabelle und del, das boolesche Objekt angeben, das true ist, wenn das Array, wenn das ctype<char> Objekt zerstört wird, sowie die Verweiszählerparameter refs gelöscht wird.
Die geschützte Memberfunktion table gibt die gespeicherte Cmaskentabelle zurück.
Das statische Memberobjekt table_size gibt die Mindestanzahl von Elementen in einer Cmaskentabelle an.
Die geschützte statische Memberfunktion classic_table(gibt die Cmaskentabelle entsprechend dem "C " - Gebietsschema.
Es gibt keine geschützten virtuellen Memberfunktionen do_is, do_scan_is oder do_scan_not.Die entsprechenden Funktionen des öffentlichen Members werden die entsprechenden Vorgänge selbst aus.
Die Memberfunktionen do_narrow und do_widen kopieren die geänderten Elemente.
Anforderungen
Header: <locale>
Namespace: std