다음을 통해 공유


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, Boolean 개체 배열 해야 하면 true이 고 삭제 시기는 ctype <char> 참조 횟수 매개 변수 참조 및 개체 소멸 됩니다.

  • 보호 된 멤버 함수는 테이블 저장된 ctype 마스크 테이블을 반환 합니다.

  • 정적 멤버 개체 table_size ctype 마스크 테이블에서 요소의 최소 개수를 지정 합니다.

  • 보호 된 정적 멤버 함수가 classic_table(ctype 마스크 테이블 "C" 로케일에 적절 한 반환 합니다.

  • 보호 된 가상 멤버 함수가 없습니다 do_is, do_scan_is, 또는 do_scan_not.해당 공용 멤버 함수와 동일한 작업을 수행합니다.

멤버 함수 do_narrowdo_widen 요소를 변경 하지 않고 복사 합니다.

요구 사항

헤더: <locale>

네임 스페이스: std

참고 항목

참조

facet Class

ctype_base Class

표준 C++ 라이브러리에서 스레드로부터의 안전성