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

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

在 CPP 中初始化二维向量 - C++

在 CPP 中初始化二维向量可以有多种方法,本文将介绍其中三种方法。

方法一:使用默认值

可以使用默认构造函数来创建二维向量,然后使用 resize() 函数来指定向量的大小。

#include <vector>

int main() {

    std::vector<std::vector<int>> vec;

    vec.resize(3);

    for (std::vector<int>& row : vec) {
        row.resize(4, 0);
    }

    return 0;
}

在上述代码中,我们首先使用默认构造函数创建一个二维向量。然后,我们使用 resize() 函数来指定向量的大小。最后,我们遍历二维向量,为每一行再次调用 resize() 函数,以设置每一行的大小,并且将其所有元素初始化为 0。

方法二:使用初始化列表

另一种方法是使用初始化列表来初始化二维向量。以下是一个示例:

#include <vector>

int main() {

    std::vector<std::vector<int>> vec = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };

    return 0;
}

在上述代码中,我们使用初始化列表来初始化二维向量。在大括号内,我们用逗号分隔每行向量的元素,并用大括号括起来表示每行向量。

方法三:使用二维数组

还可以使用二维数组来初始化二维向量。以下是一个示例:

#include <vector>

int main() {

    int arr[3][3] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };

    std::vector<std::vector<int>> vec;

    for (int i = 0; i < 3; i++) {
        vec.push_back(std::vector<int>(arr[i], arr[i] + 3));
    }

    return 0;
}

在上述代码中,我们首先创建了一个二维数组并初始化了它的值。然后,我们创建了一个空的二维向量 vec。最后,我们使用 push_back() 函数将每一行的数组转换为向量,并将其添加到二维向量中。

以上就是本文介绍的三种方法,希望可以对大家在 CPP 中初始化二维向量有所帮助。