Namespaces
Variants

std::basic_ios<CharT,Traits>:: imbue

From cppreference.net
std:: locale imbue ( const std:: locale & loc ) ;

替换当前区域设置。实际上调用了 ios_base :: imbue ( loc ) ,若存在关联的流缓冲区( rdbuf ( ) ! = 0 ),则继续调用 rdbuf ( ) - > pubimbue ( loc )

目录

参数

loc - 新区域设置

返回值

先前区域设置,由 ios_base :: imbue ( loc ) 返回。

异常

可能抛出实现定义的异常。

示例

#include <iostream>
#include <locale>
#include <sstream>
int main()
{
    std::istringstream iss;
    iss.imbue(std::locale("en_US.UTF8"));
    std::cout << "Current locale: " << iss.getloc().name() << '\n';
    iss.imbue(std::locale());
    std::cout << "Global locale : " << iss.getloc().name() << '\n';
}

输出:

Current locale: en_US.UTF8
Global locale : C