ctype<char>
Třída
Třída je explicitní specializace šablony ctype\<CharType>
třídy typ char
, popisující objekt, který může sloužit jako omezující vlastnost národního prostředí k charakterizaci různých vlastností typu char
.
Syntaxe
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
};
Poznámky
Explicitní specializace se liší od šablony třídy několika způsoby:
Objekt třídy
ctype<char>
ukládá ukazatel na první prvek tabulky masky ctype, pole UCHAR_MAX + 1 prvků typuctype_base::mask
. Uloží také logický objekt, který označuje, zda má být pole odstraněno (pomocíoperator delete[]
) při zničení objektu ctype<Elem> .Jeho jediný veřejný konstruktor umožňuje zadat
tab
, ctype mask table, adel
, logický objekt, který je true, pokud pole má být odstraněn přictype<char>
zničení objektu, stejně jako odkazy parametru reference-count.Chráněná členová funkce
table
vrátí uloženou tabulku masky ctype.Statický členský objekt
table_size
určuje minimální počet prvků v tabulce masky ctype.Chráněná statická členová funkce
classic_table
( vrátí tabulku masky ctype odpovídající národnímu prostředí "C".Neexistují žádné chráněné virtuální členské funkce do_is, do_scan_is ani do_scan_not. Odpovídající veřejné členské funkce provádějí ekvivalentní operace samy.
Členské funkce do_narrow a do_widen kopírovat prvky beze dokumentace.
Požadavky
Záhlaví:<národní prostředí>
Obor názvů: std
Viz také
facet – třída
ctype_base – třída
Bezpečný přístup z více vláken ve standardní knihovně C++