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;
}


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


原文地址:https://www.cnblogs.com/PythonFCG/p/13860048.html