此函数首先通过构造一个类型为 basic_ostream::sentr
的对象来访问输出序列。
然后(如果计算 sentry
对象是 true
),它调用 money_put::put
(使用流的选择的区域设置)来执行格式化和插入操作,相应地调整流的内部状态标志。
最后,它在返回之前销毁 sentry
对象。
它用于将货币的表示作为货币值插入到其应用的输出流中。
声明
以下是std::put_money
函数的声明。
template <class moneyT>
/*unspecified*/ put_money (const moneyT& mon, bool intl = false);
参数
mon
− 货币值。moneyT
应该是long double
或者basic_string
一个实例。intl
−true
表示国际化,否则为false
。这在内部用于实例化适当的多用途类。
返回值
它返回未指定(unspecified
),此函数应仅用作流操纵器。
示例
下面的例子解释了 put_money()
函数用法。
#include <iostream>
#include <iomanip>
int main () {
std::cout << "Price:" << std::put_money(10.50L) << '/n';
return 0;
}
编译和运行上面的程序,将产生以下结果 -
Price:10