Bre*_*men 2 c++ string vector std c++11
我有一个字符向量(实际上是无符号字符):
std::vector<unsigned char> vec;
Run Code Online (Sandbox Code Playgroud)
我想将其转换/复制到字符串对象。我尝试通过以下方式做到这一点:
std::string requestedName;
for (auto letter : vec)
{
requestedName.append((char)letter);
}
Run Code Online (Sandbox Code Playgroud)
但编译器表示这种转换是不可能的。我愿意提供所有帮助。
您可以使用运算符+=来执行此连接
std::vector<unsigned char> vec {'a', 'b', 'c', 'd'};
std::string requestedName;
for (auto letter : vec)
requestedName += letter;
Run Code Online (Sandbox Code Playgroud)
另外,您可以使用std::string构造函数的以下重载,而不是在循环中连接
std::vector<unsigned char> vec {'a', 'b', 'c', 'd'};
std::string requestedName{ vec.begin(), vec.end() };
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6119 次 |
| 最近记录: |