vector<vector<int>>的小问题
#include "stdafx.h"
#include<iostream>
using namespace std;
#include<vector>
int _tmain(int argc, _TCHAR* argv[])
{
vector<vector<int> > Arr;
Arr.reserve(10);
if (Arr.at(3).size() == 0)
{
cout<<"y"<<endl;
}
return 0;
}
代码在vs2008崩溃 为什么
[解决办法]
虽然你有reserve,但是Arr的size还是0,即并没有东西在Arr里面,at有边界检查,自然报错。
[解决办法]
std::vector<std::vector<int> > arr(10);