【发布时间】:2014-05-24 20:42:40
【问题描述】:
迭代器是基本字符串之间的适当转换吗?这是安全/合法的吗?这会创建一个有效的字符串吗?
std::u16string str16;
//str16 is set here;
std::string cStr(str16.cbegin(), str16.cend());
在 VS 2013 中它似乎工作正常。
【问题讨论】:
-
这不会将您的字符串转换为另一种编码,只需逐个元素地复制它。如果您的 str16 包含不适合
char的代码单元,它们将被截断。
标签: c++ string c++11 string-conversion