此函式首先通過構造一個型別為 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