繁体   English   中英

如何将std :: array转换为std :: vector?

[英]How to convert a std::array to a std::vector?

我需要将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迭代器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 { myData.begin(), myData.end() };

我将使用vector的范围构造函数-看起来像myvector(myData.begin(), myData.end())

供将来参考: http : //en.cppreference.com/w/cpp/container/vector/vector

只是为了多样性:

std::vector<char> myvector(std::begin(myData), std::end(myData);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM