在C ++中,我们可以通过std::vector<unsigned char> tmp_1 { &some_vector[i] , &some_vector[j] };
问题:std::string
有什么方法可以做同样的事情吗?类似于:
std::string tmp2 { &some_vector[i] , &some_vector[j] };
尝试从文档中使用构造函数总是返回错误;
注意:* some_vector是无符号字符的向量
UPD:找到答案:输入错误,因此尝试访问[-1]元素。
[std::string
具有several constructors,其中一些可用于从std::vector
构造字符串,例如:]]
// using a char* pointer and a size...
std::string tmp2( reinterpret_cast<char*>(&some_vector[i]), j-i );
此: