类模板
<locale>

std::money_put

template <class charT, class OutputIterator = ostreambuf_iterator<charT> > class money_put;
用于格式化货币表达式的 Facet

money_put 标准 facet 将货币表达式格式化为字符序列。

money_put 类模板具有受保护的析构函数:程序应仅构造派生类的对象,或使用安装在 locale 对象中的对象(通过 use_facet)。

所有标准的 locale 对象都支持该 money_put 类模板的至少以下 facet 实例化(作为 money 类别的一部分)
locale 对象中的 Facets说明
money_put<char>窄字符,用于 ostream 迭代器
money_put<wchar_t>宽字符,用于 wostream 迭代器

模板参数

charT
字符类型:要写入的字符序列的字符类型。
别名为成员 char_type
OutputIterator
输出迭代器类型,指向要写入的字符序列中的元素。
默认为 ostreambuf_iterator,它是一种可以从 basic_ostream 对象隐式转换的迭代器。
别名为成员 iter_type

成员类型

成员类型定义描述
char_type第一个模板参数(charT字符类型
iter_type第二个模板参数(OutputIterator迭代器类型。
默认为 ostreambuf_iterator<charT>
string_typebasic_string<charT>与字符类型对应的字符串类型

成员常量

此类包含一个公共静态常量,类型为 locale::id,该常量唯一标识具有 money_put 语义的 facet。

公开成员函数


虚保护成员函数


特化

所有库实现至少提供以下模板的特化和偏特化
特化
money_put<char>
money_put<wchar_t>
template <class OutputIterator> money_put<char,OutputIterator>
template <class OutputIterator> money_put<wchar_t,OutputIterator>

其中 OutputIterator 应为满足 *输出迭代器* 要求,并且能够遍历指定字符类型的元素。