如何在C ++ STL中将数组元素复制到向量?
给定一个数组,我们必须将其元素复制到C ++ STL中的向量。
将数组元素复制到向量
在C ++ STL中,我们可以使用以下方式将数组元素复制到向量中:
在声明矢量的同时分配数组元素
当我们声明矢量时,可以通过指定数组的范围[start,end]来分配数组元素。vector<type> vector_name(array_start, array_end);
通过使用复制函数
copy()函数是算法标头的库函数,可通过指定数组范围[start,end]和指向初始位置的迭代器(我们要从该位置开始)将其复制到向量中分配向量的内容)。vector<type> vector_name(size);
std::copy(array_start, array_end, vector_start_iterator);
注意:要使用vector –包含<vector>标头,而要使用copy()
函数– include <algorithm>标头,或者我们可以简单地使用<bits / stdc ++。h>标头文件。
C ++ STL程序将数组元素复制到向量
#include <iostream>#include <algorithm>
#include <vector>
using namespace std;
int main(){
//数组
int arr[] = { 10, 20, 30, 40, 50 };
//在声明数组时将其分配给vector-
vector<int> v1(arr + 0, arr + 5);
//首先宣誓
//然后复制数组内容
vector<int> v2(5);
copy(arr + 0, arr + 5, v2.begin());
//打印矢量
cout << "vector (v1): ";
for (int x : v1)
cout << x << " ";
cout << endl;
cout << "vector (v2): ";
for (int x : v2)
cout << x << " ";
cout << endl;
return 0;
}
输出结果
vector (v1): 10 20 30 40 50vector (v2): 10 20 30 40 50
以上是 如何在C ++ STL中将数组元素复制到向量? 的全部内容, 来源链接: utcz.com/z/321514.html