我需要将一个std::array
转换为std::vector
,但是我找不到快速完成它的方法。以下是示例代码:
std::array<char,10> myData={0,1,2,3,4,5,6,7,8,9};
现在我需要创建一个向量,例如:
std::vector<char> myvector;
如何用数组值初始化它是最快的方法?
您可以使用取迭代器作为参数的 std::vector
构造函数。
使用范围 [first, last) 的内容构造容器。
例如:
std::array<char,10> myData = {0,1,2,3,4,5,6,7,8,9};
std::vector<char> myvector(myData.begin(), myData.end());
只是为了变化一下:
std::vector<char> myvector(std::begin(myData), std::end(myData);
std::vector<char> myvector { myData.begin(), myData.end() };
myvector(myData.begin(), myData.end())
供参考:
http://en.cppreference.com/w/cpp/container/vector/vector
char
而初始化列表使用数字呢? - R Yodaint8_t
。 - Pablo H