...ing logging 4.0

はてなブログに移行しました。D言語の話とかいろいろ。

locale

C++でのロケール設定はこうするらしい.
なんでわざわざ違うんだ?

// C++のグローバルロケールの設定
std::locale::global( std::locale("") ) ;
// Cのロケールの設定
setlocale(LC_ALL, "") ;

// すでに作成されているオブジェクトのロケールを変更
std::cin.imbue ( std::locale("") ) ;
std::wcin.imbue( std::locale("") ) ;

std::cout.imbue( std::locale("") ) ;
std::wcout.imbue( std::locale("") ) ;

std::cerr.imbue( std::locale("") ) ;
std::wcerr.imbue( std::locale("") ) ;


// OEMコードページにはない文字の出力
std::wcout << L"ハローワールド" << std::endl ;

// OEMコードページにはない文字の入力
std::wstring buf ;
std::wcout << "ワイド文字を入力してください:" ;
std::wcin >> buf ;
std::wcout << buf << std::endl ;

追記