std::num_get
Aus cppreference.com
![]() |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
definiert in Header <locale>
|
||
template< class CharT, |
||
Klasse
std::num_get
kapselt die Regeln für das Parsen von String-Darstellungen der Werte des Typs bool, unsigned short, unsigned int, long, unsigned long, long long, unsigned long long, float, double, long double und void*. Die Standard-Formatierung Eingabe-Operatoren (wie cin >> n;) die std::num_get
Facette des I / O-Streams locale, um den Text Darstellungen der Zahlen zu analysieren .Original:
Class
std::num_get
encapsulates the rules for parsing string representations of values of type bool, unsigned short, unsigned int, long, unsigned long, long long, unsigned long long, float, double, long double, and void*. The standard formatting input operators (such as cin >> n;) use the std::num_get
facet of the I/O stream's locale to parse the text representations of the numbers.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Inhaltsverzeichnis |
[Bearbeiten] Type Anforderungen
-InputIt must meet the requirements of InputIterator .
|
[Bearbeiten] Spezialisierungen
Zwei Spezialisierungen und zwei partielle Spezialisierungen werden durch die Standard-Bibliothek zur Verfügung gestellt und werden von allen locale Objekte in einem C + +-Programm erstellt implementiert:
Original:
Two specializations and two partial specializations are provided by the standard library and are implemented by all locale objects created in a C++ program:
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
definiert in Header
<locale> | |
std::num_get<char> | erzeugt eine enge String-Parsing von Zahlen
Original: creates narrow string parsing of numbers The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
std::num_get<wchar_t> | schafft breite Zeichenfolgenanalyse von Zahlen
Original: creates wide string parsing of numbers The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
std::num_get<char, InputIt> | erzeugt eine enge String-Parsing von Zahlen mithilfe von benutzerdefinierten Eingabe-Iterator
Original: creates narrow string parsing of numbers using custom input iterator The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
std::num_get<wchar_t, InputIt> | schafft breite Zeichenfolgenanalyse von Zahlen mithilfe von benutzerdefinierten Eingabe-Iterator
Original: creates wide string parsing of numbers using custom input iterator The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[Bearbeiten] Mitglied Typen
Mitglied Typ
Original: Member type The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Definition |
char_type
|
CharT
|
iter_type
|
InputIt
|
[Bearbeiten] Member-Funktionen
baut eine neue num_get Facette Original: constructs a new num_get facet The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (öffentliche Elementfunktion) | |
zerstört sich eine num_get Facette Original: destructs a num_get facet The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (geschützt Member-Funktion) | |
Beruft do_get Original: invokes do_get The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (öffentliche Elementfunktion) |
[Bearbeiten] Mitglied widerspricht
static std::locale::id id |
ID des Gebietsschemas Original: id of the locale The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (öffentliche Member-Objekt) |
[Bearbeiten] Geschützt Member-Funktionen
[virtuell] |
parst eine Nummer aus einem Eingabestrom Original: parses a number from an input stream The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (virtuellen geschützten Member-Funktion) |
[Bearbeiten] Beispiel
#include <iostream> #include <locale> #include <string> #include <sstream> #include <iterator> int main() { std::string de_double = "1.234.567,89"; std::string us_double = "1,234,567.89"; // parse using streams std::istringstream de_in(de_double); de_in.imbue(std::locale("de_DE")); double f1; de_in >> f1; std::istringstream us_in(de_double); us_in.imbue(std::locale("en_US.UTF-8")); double f2; us_in >> f2; std::cout << "Parsing " << de_double << " as double gives " << std::fixed << f1 << " in de_DE locale and " << f2 << " in en_US\n"; // use the facet directly std::istringstream s3(us_double); s3.imbue(std::locale("en_US.UTF-8")); auto& f = std::use_facet<std::num_get<char>>(s3.getloc()); std::istreambuf_iterator<char> beg(s3), end; double f3; std::ios::iostate err; f.get(beg, end, s3, err, f3); std::cout << "parsing " << us_double << " as double using raw en_US facet gives " << f3 << '\n'; }
Output:
Parsing 1.234.567,89 as double gives 1234567.890000 in de_DE locale and 1.234000 in en_US parsing 1,234,567.89 as double using raw en_US facet gives 1234567.890000
[Bearbeiten] Siehe auch
definiert numerische Satzzeichen Regeln Original: defines numeric punctuation rules The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klassen-Template) | |
Formate numerische Werte für die Ausgabe als Zeichenfolge Original: formats numeric values for output as character sequence The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (Klassen-Template) | |
Extrakte formatierte Daten Original: extracts formatted data The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (öffentliche Elementfunktion of std::basic_istream )
|