次の方法で共有


ctype<char> Class

クラスは型 char 文字のさまざまなプロパティを付ける機能に char ロケールのファセットとして使用できるオブジェクトを表す型指定されるテンプレート クラスの ctype<CharType> の明示的な特殊化です。

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格納します。また、ctype<Elem> オブジェクトが破棄されるときに配列は、削除するかどうかを示す Boolean オブジェクトを格納します ( **operator delete[]**を使用)。

  • その唯一のパブリック コンストラクターは ctype<char> オブジェクトが破棄されると、参照カウントのパラメーターの refs 削除されている場合配列が [タブ]、ctype マスクのテーブル、およびの deltrue であるブール型のオブジェクトを指定できるようにします。

  • プロテクト メンバー関数は、格納されている table ctype マスクのテーブルを返します。

  • 静的メンバー オブジェクト table_size は ctype マスクのテーブルで要素の最小数を指定します。

  • 保護された静的メンバー関数 classic_table (「C」ロケールに戻る、適切な ctype マスクのテーブル。

  • プロテクト仮想メンバー関数 do_isdo_scan_is、または do_scan_notはありません。対応するパブリック メンバー関数は独自同等の操作を実行します。

メンバー関数 do_narrowdo_widen は不変要素をコピーします。

必要条件

Header: <locale>

名前空間: std

参照

関連項目

facet Class

ctype_base Class

C++ の標準ライブラリのスレッド セーフ