我有一些这样的代码sorta:
vector< vector<int> > vec; // multidimensional vector
while (condition)
{
vec.push_back(vector<int>()); // add subvectors to vec
for (int i = 0; i < number; i++)
{
vec[vec.size()].push_back(i); // add integers to those subvectors (the problem)
}
}
我正在使用
vec[vec.size()]
获取主 vector 中的最后一个元素,以便在其中插入一个整数。我不明白为什么会这样,但是我从这段代码中遇到了各种各样的错误。我究竟做错了什么? 最佳答案
如您所知,C / C++中的索引从[0,size-1]开始,因此要将整数插入 vector 的 vector 中的最后一个 vector 中,请使用以下代码
vec[vec.size()-1].push_back(i);