Namespaces
Variants

std:: numpunct_byname

From cppreference.net
Definiert in Header <locale>
template < class CharT >
class numpunct_byname : public std:: numpunct < CharT > ;

std::numpunct_byname ist ein std::numpunct Facette, das die numerischen Interpunktionspräferenzen eines Locales kapselt, das bei seiner Konstruktion angegeben wird.

Inhaltsverzeichnis

Spezialisierungen

Die Standardbibliothek garantiert die Bereitstellung der folgenden Spezialisierungen:

Definiert im Header <locale>
std :: numpunct_byname < char > Lokalspezifische std::numpunct Facette für Narrow-Character-E/A
std :: numpunct_byname < wchar_t > Lokalspezifische std::numpunct Facette für Wide-Character-E/A

Verschachtelte Typen

Typ Definition
char_type CharT
string_type std:: basic_string < CharT >

Memberfunktionen

(constructor)
konstruiert einen neuen numpunct_byname Facet
(öffentliche Elementfunktion)
(destructor)
zerstört einen numpunct_byname Facet
(geschützte Elementfunktion)

std::numpunct_byname:: numpunct_byname

explicit numpunct_byname ( const char * name, std:: size_t refs = 0 ) ;
explicit numpunct_byname ( const std:: string & name, std:: size_t refs = 0 ) ;
(seit C++11)

Konstruiert einen neuen std::numpunct_byname Facet für ein Locale mit name .

refs wird für die Ressourcenverwaltung verwendet: wenn refs == 0 , zerstört die Implementierung den Facet, wenn das letzte std::locale Objekt, das ihn enthält, zerstört wird. Andernfalls wird das Objekt nicht zerstört.

Parameter

name - der Name des Locale
refs - die Anzahl der Referenzen, die mit dem Facet verknüpft sind

std::numpunct_byname:: ~numpunct_byname

protected :
~numpunct_byname ( ) ;

Zerstört das Facet.

Geerbt von std:: numpunct

Geschachtelte Typen

Typ Definition
char_type CharT
string_type std:: basic_string < CharT >

Datenelemente

Element Beschreibung
std::locale::id id [static] der Identifikator des Facets

Elementfunktionen

ruft do_decimal_point auf
(öffentliche Elementfunktion von std::numpunct<CharT> )
ruft do_thousands_sep auf
(öffentliche Elementfunktion von std::numpunct<CharT> )
ruft do_grouping auf
(öffentliche Elementfunktion von std::numpunct<CharT> )
ruft do_truename oder do_falsename auf
(öffentliche Elementfunktion von std::numpunct<CharT> )

Geschützte Elementfunktionen

liefert das als Dezimaltrennzeichen zu verwendende Zeichen
(virtuelle geschützte Elementfunktion von std::numpunct<CharT> )
liefert das als Tausendertrennzeichen zu verwendende Zeichen
(virtuelle geschützte Elementfunktion von std::numpunct<CharT> )
[virtual]
liefert die Anzahl der Ziffern zwischen jedem Paar von Tausendertrennzeichen
(virtuelle geschützte Elementfunktion von std::numpunct<CharT> )
liefert die als Namen der booleschen Werte true und false zu verwendenden Zeichenketten
(virtuelle geschützte Elementfunktion von std::numpunct<CharT> )

Beispiel

Dieses Beispiel demonstriert, wie man die numerischen Interpunktionsregeln einer anderen Sprache anwendet, ohne den Rest der Locale zu ändern.

#include <iostream>
#include <locale>
int main()
{
    const double number = 1000.25;
    std::wcout << L"default locale: " << number << L'\n';
    std::wcout.imbue(std::locale(std::wcout.getloc(),
                                 new std::numpunct_byname<wchar_t>("ru_RU.UTF8")));
    std::wcout << L"default locale with russian numpunct: " << number << L'\n';
}

Ausgabe:

default locale: 1000.25
default locale with russian numpunct: 1 000,25

Siehe auch

definiert Regeln für numerische Interpunktion
(Klassentemplate)