环境:window10 + vs2015
假定现在有如下代码:
vector<int> vec_int;
clock_t c1 = clock();
for (size_t i = 0; i < 90000000; i++)
{
vec_int.push_back(i);
}
clock_t c2 = clock();
cout<<"cost time : "<<c2-c1<<endl;
代码十分简单,往一个vector容器中插入9000万个元素,输出的时间开销为: 660
如果先对容器的容量进行设定,然后再插入元素,代码如下:
vector<int> vec_int;
clock_t c1 = clock();
vec_int.reserve(90000000); //here
for (size_t i = 0; i < 90000000; i++)
{
vec_int.push_back(i);
}
clock_t c2 = clock();
cout<<"cost time : "<<c2-c1<<endl;
输出的时间开销为:420