我正在尝试做类似的事情:
#include <iostream>
#include <vector>
#include <ctime>
class Clickomania
{
public:
Clickomania();
std::vector<std::vector<int> > board;
};
Clickomania::Clickomania()
: board(12, std::vector<int>(8,0)) <<<<<<<
{
srand((unsigned)time(0));
for(int i = 0; i < 12; i++)
{
for(int j = 0; j < 8; j++)
{
int color = (rand() % 6) + 1;
board[i][j] = color;
}
}
}
但是,显然我不能用这种方式初始化 vector 的“板” vector 。
如何创建二维 vector 类型的公共(public)成员并正确初始化它?
最佳答案
您应该使用允许您为两个 vector 指定大小和初始值的构造函数,这可能会使它更容易一点。
类似于:
vector<vector<int>> v2DVector(3, vector<int>(2,0));
应该可以。
关于c++ - 如何在 C++ 中声明和初始化 2d int vector ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2733816/