📜  向量 int 以递增的数字初始化 - C++ (1)

📅  最后修改于: 2023-12-03 15:07:29.606000             🧑  作者: Mango

向量 int 以递增的数字初始化 - C++

在C++中,vector是一个非常方便的容器,它可以动态地扩展,可以存储各种类型的元素,同时也提供了很多便捷的操作方法。

在本文中,我们将介绍如何使用vector来初始化一串递增的整数。

方法一:使用循环

最常见的方法是使用一个循环进行遍历,然后逐个向vector中添加元素。下面是一段示例代码:

#include <iostream>
#include <vector>

using namespace std;

int main()
{
    vector<int> v;
    int n = 10;

    for(int i = 0; i < n; i++)
    {
        v.push_back(i);
    }

    for(int i = 0; i < v.size(); i++)
    {
        cout << v[i] << " ";
    }
    cout << endl;

    return 0;
}

上述代码中,我们首先创建了一个名为v的int类型的vector,并将其初始化为空。然后,我们使用一个for循环从0遍历到n - 1(包括0和n - 1),逐个向vector中添加元素。最后,我们再使用另一个for循环遍历vector,并将其中的元素输出。

方法二:使用STL库函数

C ++ STL库中提供了一些方便的功能,可以用来初始化一个向量以递增的数字。其中之一是std :: iota()函数,他的功能是用指定范围内的递增值填充容器。

我们可以在上面的例子中使用std :: iota()函数来初始化vector。以下是相应的代码:

#include <iostream>
#include <vector>
#include <numeric>

using namespace std;

int main()
{
    vector<int> v(10);
    int init = 0;

    std::iota(std::begin(v), std::end(v), init);

    for(auto i:v)
    {
        cout << i << " ";
    }
    cout << endl;

    return 0;
}

上述代码中,我们首先创建了一个名为v的int类型的vector,并将其初始化为大小为10的向量。然后我们定义了一个变量init,它的值为0,并使用STL库函数std :: iota()来填充这个向量。最后,我们再次使用for循环遍历vector,并将其中的元素输出。

需要注意的是,使用STL库函数的vector初始化方法要求我们了解容器的范围和初始值。然而,优点是这种方法可以非常方便地填充任何类型的容器。

总结

本文介绍了两种在C++中初始化一个向量以递增的数字的方法:使用for循环和使用STL库函数std :: iota()。

通过这些方法,我们可以方便地初始化一个向量以递增顺序的数字,并且可以非常方便地应用到实际项目中。