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

< cpp‎ | io‎ | basic ios

std::locale imbue( const std::locale& loc ); |  |

替换当前本地环境。等效地调用 ios_base::imbue(loc) ，而若有关联流缓冲（ rdbuf() != 0 ），则再调用 rdbuf()->pubimbue(loc) 。

### 参数

loc | - | 新的 locale

### 返回值

先前的 locale ，以 ios_base::imbue(loc) 返回。

### 异常

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

### 参数

    #include <iostream>
    #include <sstream>
    #include <locale>

    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