如何在C ++ STL中将数组元素复制到向量?

给定一个数组,我们必须将其元素复制到C ++ STL中的向量。

将数组元素复制到向量

在C ++ STL中,我们可以使用以下方式将数组元素复制到向量中:

  1. 在声明矢量的同时分配数组元素
    当我们声明矢量时,可以通过指定数组的范围[start,end]来分配数组元素。

        vector<type> vector_name(array_start, array_end);
  2. 通过使用复制函数
    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 50

vector (v2): 10 20 30 40 50

以上是 如何在C ++ STL中将数组元素复制到向量? 的全部内容, 来源链接: utcz.com/z/321514.html

回到顶部