9.4 How a vector Grows(一个vector如何增长)

#include <bits/stdc++.h>

using namespace std;

int main()
{
    vector<int> vec;
    
    cout << "vec size: " << vec.size() << " capacity: "
        << vec.capacity() << endl;
//capacity:vec在重新分配空间之前,vec能够拥有的元素数量
    for (vector<int>::size_type i = 0; i != 36; ++i) {
        vec.push_back(i);
    }

    cout << "vec size: " << vec.size() << " capacity: "
        << vec.capacity() << endl;

    system("PAUSE");
    return 0;
}

 

 

 

#include <bits/stdc++.h>

using namespace std;

int main()
{
    vector<int> vec;
    
    cout << "vec size: " << vec.size() << " capacity: "
        << vec.capacity() << endl;

    vec.reserve(20);//调整vec能够在空间再分配前的数量

    cout << "vec size: " << vec.size() << " capacity: "
        << vec.capacity() << endl;

    system("PAUSE");
    return 0;
}

reserve的使用:在已知container大小的情况下,先使用reserve预分配空间,能够使数据储存速度加快。

 

reserve:预分配空间,不开辟空间            resize:重新分配空间,开辟空间

posted @ 2018-10-23 22:44  Hk_Mayfly  阅读(186)  评论(0)    收藏  举报