std::string我目前对和之间区别的理解std::wstring仅仅是缓冲区的类型;即,charvs wchar_t,分别。
我还读到大多数(如果不是全部)Linux 发行版char用于任何和所有字符串,包括 ASCII 和 UTF,其中 Windows 是wchar_t不再使用的主要操作系统。
但是,我还想直接了解更多字符串类型:u16string和u32string,它们分别是具有 2 字节和 4 字节缓冲区的字符串。
所以,我的问题是:
在具有sizeof(wchar_t) == 2, 的平台上std::wstring功能等同于std::u16string, 以及具有sizeof(wchar_t) == 4和std::u32string的平台