ctype<char> Class

选件类是模板类型 ctype<CharType> 的选件 char 的显式专用化,描述可用作区域设置方面分析类型 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的元素。 它还存储指示的boolean对象是否应删除该数组(使用 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。 对应的公共成员函数执行相同的操作。

该成员函数 do_narrowdo_widen 未更改复制的组件。

要求

Header: <locale>

命名空间: std

请参见

参考

facet Class

ctype_base Class

线程安全性对标准C++库中