vector一直申请会怎样?

最近听一个学长说面试的时候遇到了这样一个问题:

vector用完内存空间后会怎么样?

也就是说,如果我们不断的申请vector空间会怎么样?其实这个问题想想就知道最后肯定会出错嘛,但是既然别人问了而且网上也没有人说明类似的问题,那我们还是做实验来解决嘛。

代码如下:

#include<vector>
using namespace std;

int main(void){
	vector<vector<int>> ivec;
	vector<int> e(1000000, 0);
	int i = 0;
	while (i <= ivec.capacity()) ivec.push_back(e);
	return 0;
}

程序运行结果如下:

果不其然,是不能分配内存了。

猜你喜欢

转载自blog.csdn.net/m0_37518259/article/details/88568990