调整类中二维向量的大小
Resize two dimensional vector in a class
我正在尝试调整类中向量的大小。我不知道错误在哪里。希望你能帮助我。
这是我的代码:
class State {
private:
vector<int> numbers;
int score;
public:
int getScore() {
return score;
}
void setScore(int score) {
this->score = score;
}
int getSize () {
return this->numbers.size();
}
void setSize(int size) {
this->numbers.clear();
this->numbers.resize(size);
for (int i = 0; i < size; ++i)
this->numbers[i].resize(size);
}
};
当我试图编译时,我得到了这个错误:
In file included from ./power.cpp:11:
./power.hpp:45:24: error: member reference base type 'value_type' (aka 'int') is not a structure or union
this->numbers[i].resize(size);
~~~~~~~~~~~~~~~~^~~~~~~
1 error generated.
希望你能帮助我。
提前感谢:)
vector<int> numbers;
声明一个一维向量。在线
this->numbers[i].resize(size);
假设numbers[i]
本身就是一个向量,但事实并非如此(它是一个int
)。你可能想要的是申报
vector<vector<int>> numbers;
或者将2D矢量"模拟"为1D展平矢量(通常更快),但要确保从2D映射到1D,反之亦然。
相关文章:
- 我在二维向量中是否正确分配了内存
- 在二维向量或数组中可以存储的最大元素数是多少?
- 如何将整数字符串转换为整数的二维向量?
- 使用 C++98 标准填充二维静态向量
- C++中复向量与实向量的二维卷积
- 如何使用擦除和迭代器来删除二维向量中的项目
- 如何在二维向量c++中迭代col
- 如何在C++中将.csv文件的元素存储到二维向量中?
- std::vector::clear()ing 二维向量线程的内部向量安全吗?
- 在我为我的二维向量提供第一个值后控制台关闭
- 以C++输出二维向量
- 在 c++ 中赋值给二维向量
- 在二维向量的每一列中查找最大值
- 如何声明二维模板化类类型向量?
- 类对象初始化的二维向量
- 如何定义二维矢量哪个元素是可变大小的向量
- 有没有办法像python:np.concatenate([x,y,z],axis=1)中那样沿着列连接三个二维向量C++
- 我如何在二维向量中存储一些数组
- 我可以push_back矩形形状到继承矩形形状的类的二维向量中吗?
- 二维向量的迭代器