numpunct (Clase)
Plantilla de clase que describe un objeto que puede actuar como faceta de la configuración regional para describir las secuencias de tipo CharType
usadas para representar información sobre el formato y la puntuación de expresiones numéricas y booleanas.
Sintaxis
template <class CharType>
class numpunct : public locale::facet;
Parámetros
CharType
Tipo usado dentro de un programa para codificar los caracteres de una configuración regional.
Comentarios
Como ocurre con cualquier faceta de configuración regional, el identificador de objeto estático tiene un valor almacenado inicial de cero. El primer intento de acceso a su valor almacenado almacena un valor positivo único en id.
Constructores
Constructor | Descripción |
---|---|
numpunct | Constructor para los objetos de tipo numpunct . |
Typedefs
Nombre de tipo | Descripción |
---|---|
char_type | Tipo que se usa para describir un carácter empleado por una configuración regional. |
string_type | Tipo que describe una cadena que contiene caracteres de tipo CharType . |
Funciones miembro
Función de miembro | Descripción |
---|---|
decimal_point | Devuelve un elemento específico de la configuración regional que se va a usar como separador decimal. |
do_decimal_point | Función miembro virtual protegida a la que se llama para devolver un elemento específico de la configuración regional que se va a usar como separador decimal. |
do_falsename | Función miembro virtual protegida a la que se llama para devolver una cadena que se va a usar como representación de texto del valor false . |
do_grouping | Función miembro virtual protegida a la que se llama para devolver una regla específica de la configuración regional con el fin de determinar cómo se agrupan los dígitos a la izquierda de cualquier separador decimal. |
do_thousands_sep | Función miembro virtual protegida a la que se llama para devolver un elemento específico de la configuración regional que se va a usar como separador de miles. |
do_truename | Función miembro virtual protegida a la que se llama para devolver una cadena que se va a usar como representación de texto del valor true . |
falsename | Devuelve una cadena que se va a usar como representación de texto del valor false . |
grouping | Devuelve una regla específica de la configuración regional para determinar cómo se agrupan los dígitos a la izquierda del separador decimal. |
thousands_sep | Devuelve un elemento específico de la configuración regional que se va a usar como separador de miles. |
truename | Devuelve una cadena que se va a usar como representación de texto del valor true . |
Requisitos
Encabezado:<locale>
Espacio de nombres: std
numpunct::char_type
Tipo que se usa para describir un carácter empleado por una configuración regional.
typedef CharType char_type;
Comentarios
El tipo es un sinónimo del parámetro de plantilla CharType.
numpunct::d ecimal_point
Devuelve un elemento específico de la configuración regional que se va a usar como separador decimal.
CharType decimal_point() const;
Valor devuelto
Un elemento específico de la configuración regional que se va a usar como separador decimal.
Comentarios
La función miembro devuelve do_decimal_point.
Ejemplo
// numpunct_decimal_point.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
locale loc( "german_germany" );
const numpunct <char> &npunct =
use_facet <numpunct <char> >( loc);
cout << loc.name( ) << " decimal point "<<
npunct.decimal_point( ) << endl;
cout << loc.name( ) << " thousands separator "
<< npunct.thousands_sep( ) << endl;
};
German_Germany.1252 decimal point ,
German_Germany.1252 thousands separator .
numpunct::d o_decimal_point
Función miembro virtual protegida a la que se llama para devolver un elemento específico de la configuración regional que se va a usar como separador decimal.
virtual CharType do_decimal_point() const;
Valor devuelto
Un elemento específico de la configuración regional que se va a usar como separador decimal.
Ejemplo
Vea el ejemplo de decimal_point, donde decimal_point
llama a la función miembro virtual.
numpunct::d o_falsename
La función miembro virtual protegida devuelve una secuencia que se va a usar como una representación de texto del valor false
.
virtual string_type do_falsename() const;
Valor devuelto
Una cadena que contiene una secuencia que se va a usar como una representación de texto del valor false
.
Comentarios
La función miembro devuelve la cadena "false" para representar el valor false
en todas las configuraciones regionales.
Ejemplo
Vea el ejemplo de falsename, donde falsename
llama a la función miembro virtual.
numpunct::d o_grouping
Función miembro virtual protegida a la que se llama para devolver una regla específica de la configuración regional con el fin de determinar cómo se agrupan los dígitos a la izquierda de cualquier separador decimal.
virtual string do_grouping() const;
Valor devuelto
Una regla específica de la configuración regional para determinar cómo se agrupan los dígitos a la izquierda de cualquier separador decimal.
Comentarios
La función miembro virtual protegida devuelve una regla específica de la configuración regional para determinar cómo se agrupan los dígitos a la izquierda de cualquier separador decimal. La codificación es la misma que para lconv::grouping.
Ejemplo
Consulte el ejemplo de grouping, donde grouping
llama a la función miembro virtual.
numpunct::d o_thousands_sep
Función miembro virtual protegida a la que se llama para devolver un elemento específico de la configuración regional que se va a usar como separador de miles.
virtual CharType do_thousands_sep() const;
Valor devuelto
Devuelve un elemento específico de la configuración regional que se va a usar como separador de miles.
Comentarios
La función miembro virtual protegida devuelve un elemento específico de la configuración regional de tipo CharType
que se va a usar como un separador de grupo a la izquierda de cualquier separador decimal.
Ejemplo
Vea el ejemplo de thousands_sep, donde thousands_sep
llama a la función miembro virtual.
numpunct::d o_truename
Función miembro virtual protegida a la que se llama para devolver una cadena que se va a usar como representación de texto del valor true
.
virtual string_type do_truename() const;
Comentarios
Una cadena que se va a usar como una representación de texto del valor true
.
Todas las configuraciones regionales devuelven una cadena "true" para representar el valor true
.
Ejemplo
Vea el ejemplo de truename, donde truename
llama a la función miembro virtual.
numpunct::falsename
Devuelve una cadena que se va a usar como representación de texto del valor false
.
string_type falsename() const;
Valor devuelto
Una cadena que contiene una secuencia de los CharType
que se van a usar como una representación de texto del valor false
.
Comentarios
La función miembro devuelve la cadena "false" para representar el valor false
en todas las configuraciones regionales.
La función miembro devuelve do_falsename.
Ejemplo
// numpunct_falsename.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
locale loc( "English" );
const numpunct <char> &npunct = use_facet <numpunct <char> >( loc );
cout << loc.name( ) << " truename "<< npunct.truename( ) << endl;
cout << loc.name( ) << " falsename "<< npunct.falsename( ) << endl;
locale loc2( "French" );
const numpunct <char> &npunct2 = use_facet <numpunct <char> >(loc2);
cout << loc2.name( ) << " truename "<< npunct2.truename( ) << endl;
cout << loc2.name( ) << " falsename "<< npunct2.falsename( ) << endl;
}
English_United States.1252 truename true
English_United States.1252 falsename false
French_France.1252 truename true
French_France.1252 falsename false
numpunct::grouping
Devuelve una regla específica de la configuración regional para determinar cómo se agrupan los dígitos a la izquierda del separador decimal.
string grouping() const;
Valor devuelto
Una regla específica de la configuración regional para determinar cómo se agrupan los dígitos a la izquierda de cualquier separador decimal.
Comentarios
La función miembro devuelve do_grouping.
Ejemplo
// numpunct_grouping.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
locale loc( "german_germany");
const numpunct <char> &npunct =
use_facet < numpunct <char> >( loc );
for (unsigned int i = 0; i < npunct.grouping( ).length( ); i++)
{
cout << loc.name( ) << " international grouping:\n the "
<< i <<"th group to the left of the radix character "
<< "is of size " << (int)(npunct.grouping ( )[i])
<< endl;
}
}
German_Germany.1252 international grouping:
the 0th group to the left of the radix character is of size 3
numpunct::numpunct
Constructor para los objetos de tipo numpunct
.
explicit numpunct(size_t _Refs = 0);
Parámetros
_Refs
Valor entero que se usa para especificar el tipo de administración de memoria del objeto.
Comentarios
Los valores posibles del parámetro _Refs y su importancia son:
0: la vigencia del objeto se administra mediante las configuraciones regionales que lo contienen.
1: la vigencia del objeto se debe administrar de manera manual.
> 1: estos valores no están definidos.
No es posible mostrar ejemplos directos, porque el destructor está protegido.
El constructor inicializa su objeto base con locale::facet(_Refs
).
numpunct::string_type
Un tipo que describe una cadena que contiene caracteres de tipo CharType.
typedef basic_string<CharType, Traits, Allocator> string_type;
Comentarios
El tipo describe una especialización de la plantilla de clase basic_string cuyos objetos pueden almacenar copias de las secuencias de puntuación.
numpunct::thousands_sep
Devuelve un elemento específico de la configuración regional que se va a usar como separador de miles.
CharType thousands_sep() const;
Valor devuelto
Un elemento específico de la configuración regional que se va a usar como separador de miles.
Comentarios
La función miembro devuelve do_thousands_sep.
Ejemplo
// numpunct_thou_sep.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
locale loc( "german_germany" );
const numpunct <char> &npunct =
use_facet < numpunct < char > >( loc );
cout << loc.name( ) << " decimal point "<<
npunct.decimal_point( ) << endl;
cout << loc.name( ) << " thousands separator "
<< npunct.thousands_sep( ) << endl;
};
German_Germany.1252 decimal point ,
German_Germany.1252 thousands separator .
numpunct::truename
Devuelve una cadena que se va a usar como representación de texto del valor true
.
string_type falsename() const;
Valor devuelto
Una cadena que se va a usar como una representación de texto del valor true
.
Comentarios
La función miembro devuelve do_truename.
Todas las configuraciones regionales devuelven una cadena "true" para representar el valor true
.
Ejemplo
// numpunct_truename.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
using namespace std;
int main( )
{
locale loc( "English" );
const numpunct < char> &npunct = use_facet <numpunct <char> >( loc );
cout << loc.name( ) << " truename "<< npunct.truename( ) << endl;
cout << loc.name( ) << " falsename "<< npunct.falsename( ) << endl;
locale loc2("French");
const numpunct <char> &npunct2 = use_facet <numpunct <char> >( loc2 );
cout << loc2.name( ) << " truename "<< npunct2.truename( ) << endl;
cout << loc2.name( ) << " falsename "<< npunct2.falsename( ) << endl;
}
English_United States.1252 truename true
English_United States.1252 falsename false
French_France.1252 truename true
French_France.1252 falsename false
Vea también
<locale>
facet (Clase)
Seguridad para subprocesos en la biblioteca estándar de C++