ctype<char> 类

类是一个模板类键入 char的 **ctypeCharType<**的> 显式专用化,描述可以充当区域设置 (IDE) 分析 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,也是如此,如果布尔对象数组应删除,则销毁 ctype<char> 对象时,以及 refs 引用参数的计数。

  • 受保护成员函数 返回存储的 ctype 蒙板表。

  • 静态成员 table_size 对象在 ctype 蒙板表中指定元素的最小值。

  • 保护的静态成员函数 classic_table(返回适当 ctype 蒙板的表移到“C”区域设置。

  • 没有保护的虚成员函数 do_isdo_scan_isdo_scan_not。 相应的公共成员函数执行等效操作。

成员函数 do_narrowdo_widen 复制未更改的元素。

要求

页眉: <区域设置>

命名空间: std

请参见

参考

facet 类

ctype_base 类

C++ 标准库中的线程安全