Classe ctype<char>
A classe é uma especialização explícita da classe ctype<CharType> do modelo para digitar char, descrevendo um objeto que pode servir como uma faceta da localidade de recurso mais propriedades de um caractere do tipo 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
};
Comentários
A especialização explícita difere da classe do modelo de várias maneiras:
Um objeto de tipo C da classechar<> armazena um ponteiro para o primeiro elemento de uma tabela de máscara de C, uma matriz de UCHAR_MAX + 1 elementos de tipo ctype_base::mask. Também armazena um objeto booliano que indica se a matriz deve ser excluída (usando operator delete[]) quando o objeto<deElem> do C é destruído.
O único construtor público permite especificar tab, a tabela de máscara de C, e del, o objeto booliano que será true se a matriz está sendo excluída quando o objeto<dechar> do C será destruído, bem como os refs de parâmetro de referência- contagem.
A função de membro protegida table retorna a tabela armazenada de máscara de C.
O objeto do membro estático table_size especifica o número mínimo de elementos em uma tabela de máscara de C.
A função de membro estático protegida classic_table(retorna a tabela de máscara de C apropriado à localidade de C “2.0”.
Não há nenhuma função de membro virtual protegida do_is, do_scan_is, ou do_scan_not. As funções de membro públicas correspondentes executa operações equivalentes em si.
As funções de membro do_narrow e do_widen copiam elementos inalterados.
Requisitos
Localidade <deHeader: >
Namespace: std