我正在用C++开发一个游戏(实际上我是从Gosu移植到SFML)。我使用GNU Gettext作为i18n系统。如您所知,gettext返回char *
使用本地编码的字符串,通常为UTF8。问题是我需要用SFML的宽字符串来识别特殊字符,如áéíüñ
。GNU Gettext和宽字符
所以问题是:我如何从gettext的输出中创建合适的wstring
?如果有某种wchar_t * w_gettext()
函数,那会很好,但是没有。我尝试了一些选项,例如通过传递迭代器从原始string
创建wstring
,但显然它不起作用。