std::moneypunct<CharT,International>:: curr_symbol, do_curr_symbol
From cppreference.net
<
cpp
|
locale
|
moneypunct
C++
Text processing library
| Localization library | |||||||||||||||||||||||||
| Regular expressions library (C++11) | |||||||||||||||||||||||||
| Formatting library (C++20) | |||||||||||||||||||||||||
| Null-terminated sequence utilities | |||||||||||||||||||||||||
| Byte strings | |||||||||||||||||||||||||
| Multibyte strings | |||||||||||||||||||||||||
| Wide strings | |||||||||||||||||||||||||
| Primitive numeric conversions | |||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Text encoding identifications | |||||||||||||||||||||||||
|
|||||||||||||||||||||||||
Localization library
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::moneypunct
| Member functions | ||||
|
moneypunct::curr_symbol
moneypunct::do_curr_symbol
|
||||
|
Definiert im Header
<locale>
|
||
|
public
:
string_type curr_symbol ( ) const ; |
(1) | |
|
protected
:
virtual string_type do_curr_symbol ( ) const ; |
(2) | |
1)
Öffentliche Memberfunktion, ruft die Memberfunktion
do_curr_symbol
der am stärksten abgeleiteten Klasse auf.
2)
Gibt die Zeichenkette zurück, die von dieser Locale als Währungsbezeichner verwendet wird. Wenn
International
(der zweite Template-Parameter von
std::moneypunct
)
false
ist, besteht der Bezeichner normalerweise aus einem einzelnen (Breit-)Zeichen, wie z.B.
"¥"
oder
"$"
. Wenn
International
true
ist, besteht der Bezeichner normalerweise aus einer vier Zeichen langen Zeichenkette, die den dreistelligen
ISO 4217
Währungscode gefolgt von einem Leerzeichen enthält (
"JPY "
oder
"USD "
).
Inhaltsverzeichnis |
Rückgabewert
Das Objekt vom Typ
string_type
, das das Währungssymbol oder den Währungscode enthält.
Beispiel
Diesen Code ausführen
#include <iostream> #include <locale> void show_ccy(const char* locname) { std::locale loc(locname); std::cout << locname << " currency symbol is " << std::use_facet<std::moneypunct<char, true>>(loc).curr_symbol() << "or " << std::use_facet<std::moneypunct<char>>(loc).curr_symbol() << " for short\n"; } int main() { show_ccy("en_US.utf8"); show_ccy("ja_JP.utf8"); show_ccy("sv_SE.utf8"); show_ccy("ru_RU.utf8"); show_ccy("vi_VN.utf8"); }
Ausgabe:
en_US.utf8 currency symbol is USD or $ for short ja_JP.utf8 currency symbol is JPY or ¥ for short sv_SE.utf8 currency symbol is SEK or kr for short ru_RU.utf8 currency symbol is RUB or руб for short vi_VN.utf8 currency symbol is VND or ₫ for short
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrektes Verhalten |
|---|---|---|---|
| LWG 666 | C++98 |
die Länge der Kennungszeichenkette musste
4
betragen, falls
International
true
ist
|
nicht erforderlich |
Siehe auch
|
[virtual]
|
stellt das Formatierungsmuster für Währungswerte bereit
(virtuelle geschützte Memberfunktion) |