21xrx.com
2025-03-24 19:36:58 Monday
文章检索 我的文章 写文章
C++中二维向量的初始化方法
2023-07-05 00:54:34 深夜i     24     0
C++ 二维向量 初始化方法

C++中,向量是一种常用的数据类型,可以存储一组有序的元素。当需要存储二维数组时,可以使用C++中的二维向量。与一维向量不同,在二维向量中,每个向量元素都是一个向量。下面介绍几种二维向量的初始化方法。

方法一:基本初始化

当二维向量的大小已知时,可以使用基本的初始化方法,如下所示:

std::vector<std::vector<int>> vec{ 2, 5, 8};

上述代码创建了一个二维向量,其中包含3个向量,每个向量包含3个整数。

方法二:通过循环初始化

可以使用循环来初始化二维向量,如下所示:

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

上述代码创建了一个3行3列的二维向量,然后使用循环将向量的每个元素初始化为其所在行列的乘积。

方法三:通过函数初始化

还可以使用函数来初始化二维向量,如下所示:

void init(std::vector<std::vector<int>>& vec, int rows, int cols) {
  vec.resize(rows, std::vector<int>(cols));
  for(int i = 0; i < rows; i++) {
    for(int j = 0; j < cols; j++) {
      vec[i][j] = i + j;
    }
  }
}

上述代码定义了一个名为init的函数,该函数接受一个二维向量、行数和列数作为参数,并使用resize方法调整向量大小。然后,使用循环将向量的每个元素初始化为其所在行列的和。

以上是几种C++中二维向量的初始化方法,可以根据具体的需求选择合适的方法。无论使用哪种方法,都要注意向量的大小,以避免访问越界。

  
  

评论区

请求出错了