std::basic_ios::imbue
From cppreference.com
std::locale imbue( const std::locale& loc ); |
||
Replaces the current locale. Effectively calls ios_base::imbue(loc) and if there is an associated stream buffer (rdbuf() != 0), then calls rdbuf()->pubimbue(loc).
Parameters
loc | - | the new locale |
Return value
The previous locale, as returned by ios_base::imbue(loc).
Exceptions
(none)
Example
Run this code
#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'; }
Output:
Current locale: en_US.UTF8 Global locale: C