Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um modelo de classe que descreve um objeto que pode servir como uma faceta de local para descrever as sequências do tipo CharType usadas para representar informações sobre a formatação e pontuação de expressões numéricas e boolianas.
Sintaxe
template <class CharType>
class numpunct : public locale::facet;
Parâmetros
CharType
O tipo usado em um programa para codificar caracteres em uma localidade.
Comentários
Como qualquer faceta de localidade, a ID de objeto estático tem um valor armazenado inicial de zero. A primeira tentativa de acessar seu valor armazenado armazena um valor positivo exclusivo na id.
Construtores
| Construtor | Descrição |
|---|---|
| numpunct | O construtor para objetos do tipo numpunct. |
Typedefs
| Nome do tipo | Descrição |
|---|---|
| char_type | Um tipo que é usado para descrever um caractere usado por uma localidade. |
| string_type | Um tipo que descreve uma cadeia de caracteres que contém caracteres do tipo CharType. |
Funções de membro
| Função de membro | Descrição |
|---|---|
| decimal_point | Retorna um elemento específico de localidade a ser usado como uma vírgula decimal. |
| do_decimal_point | Uma função membro virtual protegida que é chamada para retornar um elemento específico de localidade a ser usado como uma vírgula decimal. |
| do_falsename | Uma função membro virtual protegida que é chamada para retornar uma cadeia de caracteres a ser usada como uma representação de texto do valor false. |
| do_grouping | Uma função membro virtual protegida que é chamada para retornar uma regra específica de localidade para determinar como os dígitos são agrupados à esquerda de qualquer vírgula decimal. |
| do_thousands_sep | Uma função membro virtual protegida que é chamada para retornar um elemento específico de localidade a ser usado como um separador de milhares. |
| do_truename | Uma função membro virtual protegida que é chamada para retornar uma cadeia de caracteres a ser usada como uma representação de texto do valor true. |
| falsename | Retorna uma cadeia de caracteres a ser usada como uma representação de texto do valor false. |
| grouping | Retorna uma regra específica de localidade para determinar como os dígitos são agrupados à esquerda de qualquer vírgula decimal. |
| thousands_sep | Retorna um elemento específico de localidade a ser usado como um separador de milhares. |
| truename | Retorna uma cadeia de caracteres a ser usada como uma representação de texto do valor true. |
Requisitos
Cabeçalho:<locale>
Namespace: std
numpunct::char_type
Um tipo que é usado para descrever um caractere usado por uma localidade.
typedef CharType char_type;
Comentários
O tipo é um sinônimo do parâmetro de modelo CharType.
numpunct::d ponto_ecimal
Retorna um elemento específico de localidade a ser usado como uma vírgula decimal.
CharType decimal_point() const;
Valor de retorno
Um elemento específico de localidade a ser usado como uma vírgula decimal.
Comentários
A função membro retorna do_decimal_point.
Exemplo
// 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_ponto_decimal
Uma função membro virtual protegida que é chamada para retornar um elemento específico de localidade a ser usado como uma vírgula decimal.
virtual CharType do_decimal_point() const;
Valor de retorno
Um elemento específico de localidade a ser usado como uma vírgula decimal.
Exemplo
Veja o exemplo de decimal_point, em que a função membro virtual é chamada por decimal_point.
numpunct::d o_falsename
A função membro virtual protegida retorna uma cadeia de caracteres a ser usada como uma representação de texto do valor false.
virtual string_type do_falsename() const;
Valor de retorno
Uma cadeia de caracteres que contém uma sequência a ser usada como uma representação de texto do valor false.
Comentários
A função membro retorna a cadeia de caracteres “false” para representar o valor false em todas as localidades.
Exemplo
Veja o exemplo de falsename, em que a função membro virtual é chamada por falsename.
numpunct::d o_grouping
Uma função membro virtual protegida que é chamada para retornar uma regra específica de localidade para determinar como os dígitos são agrupados à esquerda de qualquer vírgula decimal.
virtual string do_grouping() const;
Valor de retorno
Uma regra específica de localidade para determinar como os dígitos são agrupados à esquerda de qualquer vírgula decimal.
Comentários
A função membro virtual protegida retorna uma regra específica de localidade para determinar como os dígitos são agrupados à esquerda de qualquer vírgula decimal. A codificação é a mesma usada para lconv::grouping.
Exemplo
Veja o exemplo de grouping, em que a função membro virtual é chamada por grouping.
numpunct::d o_thousands_sep
Uma função membro virtual protegida que é chamada para retornar um elemento específico de localidade a ser usado como um separador de milhares.
virtual CharType do_thousands_sep() const;
Valor de retorno
Retorna um elemento específico de localidade a ser usado como um separador de milhares.
Comentários
A função membro virtual protegida retorna um elemento específico de localidade do tipo CharType para ser usado como separador de grupo à esquerda da vírgula decimal.
Exemplo
Veja o exemplo de thousands_sep, em que a função membro virtual é chamada por thousands_sep.
numpunct::d o_truename
Uma função membro virtual protegida que é chamada para retornar uma cadeia de caracteres a ser usada como uma representação de texto do valor true.
virtual string_type do_truename() const;
Comentários
Uma cadeia de caracteres a ser usada como uma representação de texto do valor true.
Todas as localidades retornam uma cadeia de caracteres “true” para representar o valor true.
Exemplo
Veja o exemplo de truename, em que a função membro virtual é chamada por truename.
numpunct::falsename
Retorna uma cadeia de caracteres a ser usada como uma representação de texto do valor false.
string_type falsename() const;
Valor de retorno
Uma cadeia de caracteres que contém uma sequência de CharTypes a ser usada como uma representação de texto do valor false.
Comentários
A função membro retorna a cadeia de caracteres “false” para representar o valor false em todas as localidades.
A função de membro retorna do_falsename.
Exemplo
// 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::agrupamento
Retorna uma regra específica de localidade para determinar como os dígitos são agrupados à esquerda de qualquer vírgula decimal.
string grouping() const;
Valor de retorno
Uma regra específica de localidade para determinar como os dígitos são agrupados à esquerda de qualquer vírgula decimal.
Comentários
A função membro retorna do_grouping.
Exemplo
// 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
O construtor para objetos do tipo numpunct.
explicit numpunct(size_t _Refs = 0);
Parâmetros
_Refs
Valor inteiro usado para especificar o tipo de gerenciamento de memória do objeto.
Comentários
Os valores possíveis para o parâmetro _Refs e sua significância são:
0: o tempo de vida do objeto é gerenciado pelas localidades que o contêm.
1: o tempo de vida do objeto deve ser gerenciado manualmente.
> 1: esses valores não estão definidos.
Nenhum exemplo direto é possível, pois o destruidor está protegido.
O construtor inicializa seu objeto base com locale::facet( _Refs).
numpunct::string_type
Um tipo que descreve uma cadeia de caracteres que contém caracteres do tipo CharType.
typedef basic_string<CharType, Traits, Allocator> string_type;
Comentários
O tipo descreve uma especialização do modelo de classe basic_string cujos objetos podem armazenar cópias das sequências de pontuação.
numpunct::thousands_sep
Retorna um elemento específico de localidade a ser usado como um separador de milhares.
CharType thousands_sep() const;
Valor de retorno
Um elemento específico de localidade a ser usado como um separador de milhares.
Comentários
A função membro retorna do_thousands_sep.
Exemplo
// 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
Retorna uma cadeia de caracteres a ser usada como uma representação de texto do valor true.
string_type falsename() const;
Valor de retorno
Uma cadeia de caracteres a ser usada como uma representação de texto do valor true.
Comentários
A função de membro retorna do_truename.
Todas as localidades retornam uma cadeia de caracteres “true” para representar o valor true.
Exemplo
// 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
Confira também
<locale>
Classe facet
Acesso Thread-Safe na Biblioteca Padrão C++