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

Consulte también

<configuración regional>
facet (Clase)
Seguridad para subprocesos en la biblioteca estándar de C++