我正在尝试制作int类型向量的向量,然后将其打印出来。我在main.cpp中有这个代码。
Grid myGrid;
for (int i = 0; i < myGrid.getdivas(); i++)
{
for (int j = 0; j < myGrid.getdivas(); j++)
{
cout << myGrid[i][j];
}
}
我的网格构造函数是
Grid::Grid()
{
for (int i = 0; i < 10; i++)
{
vector<int> row;
for (int j = 0; j < 10; j++)
{
row.push_back(0);
}
grid_.push_back(row);
}
}
我在cout声明中一直收到错误:
'网格'未定义此运算符或转换为预定义运算符
可接受的类型
答案 0 :(得分:2)
应该是:
cout << myGrid.grid_[i][j]; // if grid_ is public
但你可能想为你的班级重载operator[]
。更好的是,有一个成员函数可以执行打印或重载operator<<
。