Clase ctype<char>
La clase es una especialización explícita de la clase de plantilla ctype\<CharType>
a tipo char
, que describe un objeto que puede actuar como una faceta de configuración regional para caracterizar distintas propiedades de un carácter de tipo char
.
Sintaxis
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
};
Comentarios
La especialización explícita difiere de la clase de plantilla de varias maneras:
Un objeto de clase
ctype<char>
almacena un puntero al primer elemento de una tabla de máscara ctype, una matriz de elementos UCHAR_MAX + 1 de tipoctype_base::mask
. También almacena un objeto booleano que indica si se debe eliminar la matriz (conoperator delete[]
) cuando se destruye el objeto ctype<Elem>.Su único constructor público le permite especificar
tab
, la tabla de máscara de ctype ydel
, el objeto booleano que es True si la matriz debe eliminarse cuando se destruye el objetoctype<char>
, así como las referencias del parámetro de recuento de referencias.La función miembro protegida
table
devuelve la tabla de máscara ctype almacenada.El objeto miembro estático
table_size
especifica el número mínimo de elementos en una tabla de máscara ctype.La función miembro estática protegida
classic_table
devuelve la tabla de máscara ctype adecuada a la configuración regional de "C".No hay ninguna función miembro virtual protegida do_is, do_scan_is o do_scan_not. Las funciones miembro públicas correspondientes realizan las operaciones equivalentes ellas mismas.
Las funciones miembro do_narrow y do_widen copian elementos sin modificaciones.
Requisitos
Encabezado:<locale>
Espacio de nombres: std
Consulte también
facet (Clase)
ctype_base (Clase)
Seguridad para subprocesos en la biblioteca estándar de C++