numpunct — Klasa
Szablon klasy opisujący obiekt, który może służyć jako lokalny aspekt opis sekwencji typu CharType
używanych do reprezentowania informacji na temat formatowania i interpunkcji wyrażeń liczbowych i logicznych.
Składnia
template <class CharType>
class numpunct : public locale::facet;
Parametry
Typ char
Typ używany w programie do kodowania znaków w ustawieniach regionalnych.
Uwagi
Podobnie jak w przypadku dowolnego zestawu reguł ustawień regionalnych, identyfikator obiektu statycznego ma początkową przechowywaną wartość zero. Pierwsza próba uzyskania dostępu do przechowywanej wartości przechowuje unikatową wartość dodatnią w identyfikatorze.
Konstruktory
Konstruktor | opis |
---|---|
numpunct | Konstruktor dla obiektów typu numpunct . |
Typedefs
Nazwa typu | opis |
---|---|
char_type | Typ opisujący znak używany przez ustawienie regionalne. |
string_type | Typ opisujący ciąg zawierający znaki typu CharType . |
Funkcje składowe
Funkcja składowa | opis |
---|---|
decimal_point | Zwraca element ustawień regionalnych używany jako separator dziesiętny. |
do_decimal_point | Chroniona funkcja wirtualna elementu członkowskiego, która jest wywoływana w celu zwrócenia elementu specyficznego dla ustawień regionalnych używanego jako separator dziesiętny. |
do_falsename | Chroniona funkcja wirtualna elementu członkowskiego wywoływana w celu zwrócenia ciągu, który ma być używany jako tekstowa reprezentacja wartości false . |
do_grouping | Chroniona funkcja wirtualna elementu członkowskiego, wywoływana w celu zwrócenia reguły specyficznej dla ustawień regionalnych, aby określić sposób grupowania cyfr na lewo od każdego znaku dziesiętnego. |
do_thousands_sep | Chroniona funkcja wirtualna elementu członkowskiego, która jest wywoływana w celu zwrócenia elementu specyficznego dla ustawień regionalnych używanego jako separator tysięczny. |
do_truename | Chroniona funkcja wirtualna elementu członkowskiego wywoływana w celu zwrócenia ciągu, który ma być używany jako tekstowa reprezentacja wartości true . |
falsename | Zwraca ciąg, który ma być używany jako tekstowa reprezentacja wartości false . |
grupowanie | Zwraca regułę specyficzną dla ustawień regionalnych określającą sposób grupowania cyfr na lewo od każdego znaku dziesiętnego. |
thousands_sep | Zwraca element specyficzny dla ustawień regionalnych używany jako separator tysięczny. |
truename | Zwraca ciąg, który ma być używany jako tekstowa reprezentacja wartości true . |
Wymagania
Nagłówek:<ustawienia regionalne>
Przestrzeń nazw: std
numpunct::char_type
Typ opisujący znak używany przez ustawienie regionalne.
typedef CharType char_type;
Uwagi
Typ jest synonimem parametru CharType szablonu.
numpunct::d ecimal_point
Zwraca element ustawień regionalnych używany jako separator dziesiętny.
CharType decimal_point() const;
Wartość zwracana
Element specyficzny dla ustawień regionalnych do użycia jako punkt dziesiętny.
Uwagi
Funkcja składowa zwraca do_decimal_point.
Przykład
// 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
Chroniona funkcja wirtualna elementu członkowskiego, która jest wywoływana w celu zwrócenia elementu specyficznego dla ustawień regionalnych używanego jako separator dziesiętny.
virtual CharType do_decimal_point() const;
Wartość zwracana
Element specyficzny dla ustawień regionalnych do użycia jako punkt dziesiętny.
Przykład
Zobacz przykład decimal_point, w którym wirtualna funkcja składowa jest wywoływana przez decimal_point
element .
numpunct::d o_falsename
Chroniona funkcja wirtualnego elementu członkowskiego zwraca sekwencję, która ma być używana jako tekstowa reprezentacja wartości false
.
virtual string_type do_falsename() const;
Wartość zwracana
Ciąg zawierający sekwencję, która ma być używana jako tekstowa reprezentacja wartości false
.
Uwagi
Funkcja składowa zwraca ciąg "false", aby reprezentować wartość false
we wszystkich ustawieniach regionalnych.
Przykład
Zobacz przykład falsename, gdzie funkcja wirtualnego elementu członkowskiego jest wywoływana przez falsename
.
numpunct::d o_grouping
Chroniona funkcja wirtualna elementu członkowskiego, wywoływana w celu zwrócenia reguły specyficznej dla ustawień regionalnych, aby określić sposób grupowania cyfr na lewo od każdego znaku dziesiętnego.
virtual string do_grouping() const;
Wartość zwracana
Reguła specyficzna dla ustawień regionalnych do określania sposobu grupowania cyfr po lewej stronie dowolnego punktu dziesiętnego.
Uwagi
Chroniona funkcja wirtualna elementu członkowskiego zwraca regułę specyficzną dla ustawień regionalnych, aby określić sposób grupowania cyfr na lewo od każdego separatora dziesiętnego. Kodowanie jest takie samo jak w przypadku grupowania lconv::grouping.
Przykład
Zobacz przykład grupowania, w którym funkcja wirtualnego elementu członkowskiego jest wywoływana przez grouping
element .
numpunct::d o_thousands_sep
Chroniona funkcja wirtualna elementu członkowskiego, która jest wywoływana w celu zwrócenia elementu specyficznego dla ustawień regionalnych używanego jako separator tysięczny.
virtual CharType do_thousands_sep() const;
Wartość zwracana
Zwraca element specyficzny dla ustawień regionalnych używany jako separator tysięczny.
Uwagi
Funkcja chronionego wirtualnego elementu członkowskiego zwraca element specyficzny dla ustawień regionalnych typu CharType
, który ma być używany jako separator grupy po lewej stronie dowolnego punktu dziesiętnego.
Przykład
Zobacz przykład thousands_sep, w którym wirtualna funkcja składowa jest wywoływana przez thousands_sep
element .
numpunct::d o_truename
Chroniona funkcja wirtualna elementu członkowskiego wywoływana w celu zwrócenia ciągu, który ma być używany jako tekstowa reprezentacja wartości true
.
virtual string_type do_truename() const;
Uwagi
Ciąg do użycia jako tekstowa reprezentacja wartości true
.
Wszystkie ustawienia regionalne zwracają ciąg "true", aby reprezentować wartość true
.
Przykład
Zobacz przykład truename, gdzie funkcja wirtualnego elementu członkowskiego jest wywoływana przez truename
.
numpunct::falsename
Zwraca ciąg, który ma być używany jako tekstowa reprezentacja wartości false
.
string_type falsename() const;
Wartość zwracana
Ciąg zawierający sekwencję CharType
s, która ma być używana jako tekstowa reprezentacja wartości false
.
Uwagi
Funkcja składowa zwraca ciąg "false", aby reprezentować wartość false
we wszystkich ustawieniach regionalnych.
Funkcja składowa zwraca do_falsename.
Przykład
// 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
Zwraca regułę specyficzną dla ustawień regionalnych określającą sposób grupowania cyfr na lewo od każdego znaku dziesiętnego.
string grouping() const;
Wartość zwracana
Reguła specyficzna dla ustawień regionalnych do określania sposobu grupowania cyfr po lewej stronie dowolnego punktu dziesiętnego.
Uwagi
Funkcja składowa zwraca do_grouping.
Przykład
// 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
Konstruktor dla obiektów typu numpunct
.
explicit numpunct(size_t _Refs = 0);
Parametry
_Bibl.
Wartość całkowita używana do określania typu zarządzania pamięcią dla obiektu.
Uwagi
Możliwe wartości parametru _Refs i ich istotności to:
0: Okres istnienia obiektu jest zarządzany przez ustawienia regionalne, które go zawierają.
1: Okres istnienia obiektu musi być zarządzany ręcznie.
> 1: Te wartości nie są zdefiniowane.
Nie są możliwe żadne bezpośrednie przykłady, ponieważ destruktor jest chroniony.
Konstruktor inicjuje obiekt podstawowy za pomocą ustawień regionalnych::facet(_Refs
).
numpunct::string_type
Typ opisujący ciąg zawierający znaki typu CharType.
typedef basic_string<CharType, Traits, Allocator> string_type;
Uwagi
Typ opisuje specjalizację szablonu klasy basic_string , którego obiekty mogą przechowywać kopie sekwencji interpunkcyjnych.
numpunct::thousands_sep
Zwraca element specyficzny dla ustawień regionalnych używany jako separator tysięczny.
CharType thousands_sep() const;
Wartość zwracana
Element specyficzny dla ustawień regionalnych używany jako separator tysięcy.
Uwagi
Funkcja składowa zwraca do_thousands_sep.
Przykład
// 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
Zwraca ciąg, który ma być używany jako tekstowa reprezentacja wartości true
.
string_type falsename() const;
Wartość zwracana
Ciąg do użycia jako tekstowa reprezentacja wartości true
.
Uwagi
Funkcja składowa zwraca do_truename.
Wszystkie ustawienia regionalne zwracają ciąg "true", aby reprezentować wartość true
.
Przykład
// 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
Zobacz też
<ustawienia regionalne>
facet, klasa
Bezpieczeństwo wątku w standardowej bibliotece C++