C++ Locale 库 - combine
描述
它构造一个修改一个方面的语言环境副本,并返回一个从 *this 的副本构造的语言环境对象,除了模板参数 Facet 指定的方面,它取自 x。
声明
以下是 std::locale::combine 的声明。
C++98
template <class Facet> locale combine (const locale& x) const;
C++11
template <class Facet> locale combine (const locale& x) const;
参数
x − 它是一个 locale 对象,其 Facet 被新的 locale 使用。
返回值
它返回生成的语言环境对象,该对象没有名称。
异常
Basic guarantee − 如果抛出异常,则对象处于有效状态。
数据竞争
语言环境对象被修改。
示例
在下面的例子中解释了 std::locale::combine。
#include <iostream> #include <locale> int main () { std::locale loc(""); loc = loc.combine< std::num_put<char> > (std::locale::classic()); std::cout.imbue(loc); std::cout << 3.1 << '\n'; return 0; }
让我们编译并运行上面的程序,这将产生以下结果 −
3.1