Namensräume
Varianten
Aktionen

std::numpunct_byname

Von cppreference.com
< cpp‎ | locale
 
 
 
 
Definiert in Header <locale>
template< class CharT >
class numpunct_byname : public std::numpunct<CharT>;

std::numpunct_byname ist eine std::numpunct Facette, die numerische Interpunktionspräferenzen einer bei ihrer Konstruktion angegebenen Locale kapselt.

Inhalt

[bearbeiten] Spezialisierungen

Die Standardbibliothek garantiert die Bereitstellung der folgenden Spezialisierungen

Definiert in Header <locale>
std::numpunct_byname<char> Locale-spezifische std::numpunct Facette für Narrow-Character-I/O
std::numpunct_byname<wchar_t> Locale-spezifische std::numpunct Facette für Wide-Character-I/O

[bearbeiten] Verschachtelte Typen

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

[bearbeiten] Memberfunktionen

(Konstruktor)
Konstruiert eine neue numpunct_byname Facette
(public member function) [bearbeiten]
(Destruktor)
Zerstört eine numpunct_byname Facette
(protected member function) [bearbeiten]

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 eine neue std::numpunct_byname Facette für eine Locale mit dem Namen name.

refs wird für die Ressourcenverwaltung verwendet: Wenn refs = 0 ist, zerstört die Implementierung die Facettenklasse, wenn das letzte std::locale-Objekt, das sie hält, zerstört wird. Andernfalls wird das Objekt nicht zerstört.

Parameter

name - der Name der Locale
refs - die Anzahl der Referenzen, die auf die Facettenklasse verweisen

std::numpunct_byname::~numpunct_byname

protected:
~numpunct_byname();

Zerstört die Facettenklasse.

Geerbt von std::numpunct

Verschachtelte Typen

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

[edit] Datenmember

Mitglied Beschreibung
std::locale::id id [static] die Kennung des Facets

Memberfunktionen

ruft do_decimal_point auf
(public member function of std::numpunct<CharT>) [bearbeiten]
ruft do_thousands_sep auf
(public member function of std::numpunct<CharT>) [bearbeiten]
ruft do_grouping auf
(public member function of std::numpunct<CharT>) [bearbeiten]
ruft do_truename oder do_falsename auf
(public member function of std::numpunct<CharT>) [bearbeiten]

Geschützte Memberfunktionen

stellt das zu verwendende Zeichen für den Dezimalpunkt bereit
(virtual protected member function of std::numpunct<CharT>) [bearbeiten]
stellt das zu verwendende Zeichen für den Tausendertrenner bereit
(virtual protected member function of std::numpunct<CharT>) [bearbeiten]
[virtuell]
stellt die Anzahl der Ziffern zwischen jedem Paar von Tausendertrennzeichen bereit
(virtual protected member function of std::numpunct<CharT>) [bearbeiten]
liefert den String, der als Name für die booleschen Werte true und false verwendet wird
(virtual protected member function of std::numpunct<CharT>) [bearbeiten]

[bearbeiten] Beispiel

Dieses Beispiel zeigt, wie die numerischen Interpunktionsregeln einer anderen Sprache angewendet werden können, 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

[bearbeiten] Siehe auch

definiert Regeln für numerische Satzzeichen
(Klassentemplate) [bearbeiten]