Aracılığıyla paylaş


ctype<char> Sınıf

sınıfı, türündeki charbir karakterin çeşitli özelliklerini niteleyen bir yerel ayar model olarak görev yapabilecek bir nesneyi açıklayan, yazacak charsınıf şablonunun ctype\<CharType> açık bir özelleştirmesidir.

Sözdizimi

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
};

Açıklamalar

Açık özelleştirme, sınıf şablonundan çeşitli yollarla farklıdır:

  • sınıfının ctype<char> nesnesi, bir ctype maske tablosunun ilk öğesi olan UCHAR_MAX + 1 öğe türünde ctype_base::maskbir diziye yönelik bir işaretçi depolar. Ayrıca, ctype<Elem> nesnesi yok edildiğinde dizinin silinip silinmeyeceğini (kullanarakoperator delete[]) belirten bir Boole nesnesi depolar.

  • Tek ortak oluşturucu, nesne yok edildiğinde ctype<char> dizinin silinmesi gerekiyorsa doğru olan boole nesnesini ve delbaşvuru sayısı parametresi refs değerini belirtmenize tabolanak tanır.

  • Korumalı üye işlevi table , depolanan ctype maske tablosunu döndürür.

  • Statik üye nesnesi table_size , bir ctype maske tablosundaki en az öğe sayısını belirtir.

  • Korumalı statik üye işlevi classic_table() "C" yerel ayarına uygun ctype maske tablosunu döndürür.

  • do_is, do_scan_is veya do_scan_not korumalı sanal üye işlevi yoktur. Karşılık gelen genel üye işlevleri eşdeğer işlemleri kendileri gerçekleştirir.

Üye işlevleri do_narrow ve do_widen öğeleri değiştirilmeden kopyalar.

Gereksinimler

Üst bilgi:<yerel ayar>

Ad alanı: std

Ayrıca bkz.

model sınıfı
ctype_base Sınıfı
C++ Standart Kitaplığında İş Parçacığı Güvenliği