命名空间
变体
操作

std::moneypunct

来自 cppreference.cn
< cpp‎ | locale
 
 
 
 
 
定义于头文件 <locale>
template< class CharT, bool International = false >
class moneypunct;

std::moneypunct facet 封装了货币值格式偏好。流 I/O 操纵器 std::get_moneystd::put_money 通过 std::money_getstd::money_put 使用 std::moneypunct 来解析货币值输入和格式化货币值输出。

cpp/locale/money basecpp/locale/locale/facetstd-moneypunct-inheritance.svg

继承图

目录

[edit] 特化

标准库保证提供以下特化(它们 要求由任何区域设置对象实现

定义于头文件 <locale>
std::moneypunct<char> 提供“C”语言环境偏好的等价物
std::moneypunct<wchar_t> 提供“C”语言环境偏好的宽字符等价物
std::moneypunct<char, true> 提供“C”语言环境偏好的等价物,带有国际货币符号
std::moneypunct<wchar_t, true> 提供“C”语言环境偏好的宽字符等价物,带有国际货币符号

[edit] 嵌套类型

类型 定义
char_type CharT
string_type std::basic_string<CharT>

[edit] 数据成员

成员 描述
std::locale::id id [static] facet 的标识符
const bool intl [static] International

[edit] 成员函数

构造一个新的 moneypunct facet
(public member function) [edit]
调用 do_decimal_point
(public member function) [edit]
调用 do_thousands_sep
(public member function) [edit]
调用 do_grouping
(public member function) [edit]
调用 do_curr_symbol
(public member function) [edit]
调用 do_positive_signdo_negative_sign
(public member function) [edit]
调用 do_frac_digits
(public member function) [edit]
调用 do_pos_format/do_neg_format
(public member function) [edit]

[edit] 受保护成员函数

销毁 moneypunct facet
(protected member function) [edit]
提供用作小数点的字符
(virtual protected member function) [edit]
提供用作千位分隔符的字符
(virtual protected member function) [edit]
[virtual]
提供每对千位分隔符之间的数字个数
(virtual protected member function) [edit]
提供用作货币标识符的字符串
(virtual protected member function) [edit]
提供指示正值或负值的字符串
(virtual protected member function) [edit]
提供小数点后显示的位数
(virtual protected member function) [edit]
提供货币值的格式模式
(virtual protected member function) [edit]

继承自 std::money_base

嵌套类型

类型 定义
enum part { none, space, symbol, sign, value }; 非限定枚举类型
struct pattern { char field[4]; }; 货币格式类型
枚举常量 描述
允许但不强制要求空格,除了在最后一个位置,该位置不允许有空格
space 需要一个或多个空格字符
symbol 需要 std::moneypunct::curr_symbol 返回的字符序列
sign 需要 std::moneypunct::positive_signstd::moneypunct::negative_sign 返回的字符中的第一个
value 需要绝对的数字货币值

[edit] 另请参阅

定义货币格式模式
(class) [edit]
表示命名语言环境的系统提供的 std::moneypunct
(class template) [edit]
从输入字符序列解析和构造货币值
(class template) [edit]
将货币值格式化为字符序列输出
(class template) [edit]