我正在编写一个独立于语言环境的C ++应用程序,因此我决定使用UTF-16作为字符串/文本的内存表示(应用程序应尽可能与平台无关)。为了本地化应用程序的消息,我想使用GNU的gettext库。由于这个库似乎在内部使用GNU's libunistring库,我也想使用它。
对于i18n,l10n来说这是一个很好的解决方案吗?我的意思是我的C ++类中会有很多C代码(我没有找到libunistring库的C ++ Wrapper)。
的Stefan
PS:这是我的第一个大型C ++应用程序。
答案 0 :(得分:3)
请改用UTF8。见:
答案 1 :(得分:1)
如果它是用c ++编写的gui应用程序,那么qt可能是一个很好的工具包。 它包括自己的字符串类和自己的国际化支持:
http://doc.trolltech.com/4.7/internationalization.html。
此外,您可以自己使用核心非gui类(它们位于QtGui命名空间中独立的QtCore命名空间中,并且编译为分离动态链接库)。