Sdílet prostřednictvím


ctype<char> – třída

Explicitní specializace šablony třídy je třída ctype<CharType> k zadání char, popisující objekt, který může sloužit jako národní prostředí podmínka charakterizující různé vlastnosti znaku typu char.

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> uchovává ukazatel na první prvek tabulky ctype masky, matici UCHAR_MAX + 1 prvky typu ctype_base::mask.Uloží také objektu Boolean, která označuje, zda pole by měla být odstraněna (pomocí operator delete[]) když ctype<Elem> objekt zničen.

  • Jeho jediný veřejný konstruktor umožňuje určit kartu, Tabulka maska ctype, a del, Boolean objekt, který má hodnotu true, zda má být pole odstraněn, kdy ctype<char> objekt zničen a odkazy parametr počet odkazů.

  • Chráněné členskou funkci Tabulka vrací tabulka uložené ctype maska.

  • Statický člen objektu table_size Určuje minimální počet prvků v tabulce ctype masky.

  • Chráněný člen statické funkce classic_table(Tabulka maska ctype vrátí odpovídající národní prostředí "C".

  • Neexistují žádné chráněné virtuální členská funkce do_is, do_scan_is, nebo do_scan_not.Odpovídající funkce veřejného člena provádět odpovídající operace samy.

Členské funkce do_narrow a do_widen kopírovat prvky v nezměněném stavu.

Požadavky

Záhlaví:<národního prostředí>

Obor názvů: std

Viz také

Referenční dokumentace

facet – třída

ctype_base – třída

Bezpečný přístup z více vláken ve standardní knihovně C++