c++ - C++11 中一个好的 std::string 跨平台 UTF8 替代品?

标签 c++ string wstring

我正在尝试在游戏中找到一个很好的替代 std::string 的方法。 wstring 在 Android 中无法正常工作。到目前为止,我只使用 ushort[]0-65535 范围(每个字符 2 个字节),它似乎可以很好地用于 11 种语言作为位图字体,但继续前进我'我希望获得更好的实现。

u8"xxxyyy" VC++ 编译器尚不支持文字符号,我还有哪些其他选项?

最佳答案

阻力最小的方法可能就是继续将 UTF-8 放入 std::string 对象中。对于 ASCII 范围之外的任何内容,您必须使用手动编码的反斜杠转义来编写 UTF-8 文字,并且您将无法使用 locale,但根据我的经验 locale 无论如何都没用。我个人无法保证它的有用性,而且它太大了,不方便,但您可能发现 ICU图书馆有适合这一策略的例程。

关于c++ - C++11 中一个好的 std::string 跨平台 UTF8 替代品?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12981005/

相关文章:

c++ - 如何解释 c++ 标准中的规则 [namespace.udir]p2?

c++编译cppunit文件并执行xml报告

java - 仅使用第一个实例 java 分割字符串

c++ - 在 C++ 中处理 UTF-8

c++ - 如何将用 linux 编写的 std::wstring 读入 windows

c++ - 如何获取文件名

c++ - std::vector 推速?

c++ - 链接器错误 LNK1109

string - Python 3 字符串解码

c - 如何检查两个字符串是否具有相同的字符?