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
|
||||
|
Определено в заголовке
<locale>
|
||
|
public
:
string_type curr_symbol ( ) const ; |
(1) | |
|
protected
:
virtual string_type do_curr_symbol ( ) const ; |
(2) | |
1)
Публичная функция-член, вызывает функцию-член
do_curr_symbol
самого производного класса.
2)
Возвращает строку, используемую в качестве идентификатора валюты для данной локали. Если
International
(второй параметр шаблона
std::moneypunct
) равен
false
, идентификатор обычно представляет собой один (широкий) символ, такой как
"¥"
или
"$"
. Если
International
равен
true
, идентификатор обычно представляет собой четырёхсимвольную строку, содержащую трёхсимвольный
ISO 4217
код валюты с последующим пробелом (
"JPY "
или
"USD "
).
Содержание |
Возвращаемое значение
Объект типа
string_type
содержащий символ или код валюты.
Пример
Запустить этот код
#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"); }
Вывод:
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
Отчеты о дефектах
Следующие отчеты об изменениях поведения, влияющие на дефекты, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Applied to | Behavior as published | Correct behavior |
|---|---|---|---|
| LWG 666 | C++98 |
длина строки идентификатора требовалась равной
4
если
International
равно
true
|
не требуется |
Смотрите также
|
[virtual]
|
предоставляет шаблон форматирования для денежных значений
(виртуальная защищенная функция-член) |