
C++中实现多语言支持主要依赖于locale的设定。通过setlocale()函数或者C++特有的locale::global()可以调整全局locale,而imbue()方法用于临时改变流的locale设置。宽字符(wchar_t)和宽字符串(wstring)是处理多语言的关键。在Visual Studio 2003中,流的imbue()可能无效,需要使用setlocale()。然而,Linux环境下可能因gcc版本问题导致实验无法成功。需要注意的是,旧版VC6的STL实现存在wcin的问题,使用更新的stlport库可以解决。