vector预留空间

功能

减少vector在动态扩展容量时的扩展次数


函数

reserve(int len);//容器预留len个元素长度,预留位置不初始化,元素不可访问。

测试代码

#include <iostream>
using namespace std;
#include <vector>

#include <vector>

void test01()
{
	vector<int> v;

	//预留空间
	v.reserve(100000);

	int num = 0;
	int* p = NULL;
	for (int i = 0; i < 1000000; i++) {
		v.push_back(i);
		if (p != &v[0]) {
			p = &v[0];
			num++;
		}
	}

	cout << "num:" << num << endl;
}

int main() {

	test01();

	system("pause");

	return 0;
}


输出结果如下图:
在这里插入图片描述


posted @ 2020-02-04 19:19  消灭猕猴桃  阅读(132)  评论(0编辑  收藏  举报