Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Klasse ist eine explizite Spezialisierung der Klassenvorlage ctype<CharType> zum Eingeben char, die ein Objekt beschreibt, das als Gebietsschema-Facet dienen kann, um verschiedene Eigenschaften eines Typs charzu charakterisieren.
Syntax
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 Klassenvorlage auf verschiedene Arten:
Ein Objekt der Klasse
ctype<char>speichert einen Zeiger auf das erste Element einer Ctype-Maskentabelle, ein Array von UCHAR_MAX + 1 Elemente vom Typctype_base::mask. Außerdem wird ein boolesches Objekt gespeichert, das angibt, ob das Array gelöscht werden soll (mitoperator delete[]) wenn das ctype<Elem-Objekt> zerstört wird.Mit dem einzigen öffentlichen Konstruktor können Sie angeben
tab, die ctype-Maskentabelle unddeldas boolesche Objekt, das true ist, wenn das Array gelöscht werden soll, wenn dasctype<char>Objekt zerstört wird, sowie die Verweisanzahl-Parameterreferenzen.Die geschützte Memberfunktion
tablegibt die gespeicherte Ctype-Maskentabelle zurück.Das statische Memberobjekt
table_sizegibt die Mindestanzahl von Elementen in einer Ctype-Maskentabelle an.Die geschützte statische Memberfunktion
classic_tablegibt die ctype-Maskentabelle zurück, die für das Gebietsschema "C" geeignet ist.Die geschützten virtuellen Memberfunktionen do_is, do_scan_is bzw. do_scan_not werden nicht verwendet. Die entsprechenden öffentlichen Memberfunktionen führen die jeweiligen Vorgänge selbst aus.
Die Memberfunktionen do_narrow und do_widen kopieren Elemente unverändert.
Anforderungen
Kopfball:<Gebietsschema>
Namespace: std
Siehe auch
facet-Klasse
ctype_base-Klasse
Threadsicherheit in der C++-Standardbibliothek