ctype<char> Class

類別是 ctype<CharType類別樣板的明確特製化>輸入 char,描述可以做為地區設定facet Draw型別 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
};

備註

明確特製化樣板類別的差異之處如下:

  • 類別ctype<char>物件儲存指向ctype遮罩資料表的第一個項目,陣列UCHAR_MAX + 1型別 ctype_base::mask的項目。它也會儲存布林值物件是否應刪除陣列(使用), **operator delete[]**終結時ctype<Elem>物件。

  • 它的單一公用建構函式可讓您指定 索引標籤, ctype遮罩資料表和 del,為true Boolean物件,如果陣列應該刪除,終結時ctype<char>物件,以及參考計數參數refs。

  • 受保護的成員函式 table 傳回儲存的ctype遮罩資料表。

  • 靜態成員物件 table_size 在ctype遮罩表指定項目的最小數目。

  • 受保護的靜態成員函式 classic_table(傳回適當ctype遮罩的資料表移至「C」地區設定。

  • 未受保護的虛擬成員函式 do_isdo_scan_isdo_scan_not。對應的Public成員函式執行相同作業。

成員函式 do_narrowdo_widen 未變更複製的項目。

需求

Header: <locale>

命名空間: std

請參閱

參考

facet Class

ctype_base Class

在標準 C++ 程式庫中的執行緒安全