📜  初始化二维向量 - C++ (1)

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

初始化二维向量 - C++

在 C++ 中,我们可以使用 vector 来创建动态数组。如果我们需要创建一个二维数组,可以使用 vector<vector<int>> 嵌套来实现。接下来让我们来学习如何初始化一个二维向量。

创建一个空的二维向量

使用默认构造函数可以创建一个空的二维向量。

#include <vector>

int main() {
    std::vector<std::vector<int>> v; // 创建一个空的二维向量
    return 0;
}
初始化一个具有固定大小的二维向量

我们可以使用 resize 函数来初始化一个具有固定大小的二维向量。

#include <vector>

int main() {
    std::vector<std::vector<int>> v(3, std::vector<int>(4)); // 创建一个3*4的二维向量
    return 0;
}

上面的代码将创建一个3行4列的二维向量,并使用默认值0来填充向量。

初始化一个具有初始值的二维向量

我们也可以在创建向量时为它们提供初始值。例如:

#include <vector>

int main() {
    std::vector<std::vector<int>> v = {
        {1, 2},
        {3, 4},
        {5, 6},
    };
    return 0;
}

上面的代码将创建一个3行2列的二维向量,以指定的值初始化每个元素。

从数组初始化二维向量

还可以通过将二维数组作为参数传递来初始化二维向量。

#include <vector>
#include <array>

int main() {
    std::array<std::array<int, 2>, 3> a = {{
        {1, 2},
        {3, 4},
        {5, 6},
    }};
    std::vector<std::vector<int>> v(a.begin(), a.end()); // 将二维数组a转成向量v
    return 0;
}

上面的代码将创建一个3行2列的二维向量,并将它们的值设为与 std::array 中相同的值。

这就是初始化二维向量的实例。记住,二维向量是一个非常强大和灵活的数据结构,它可以在各种场景下使用。