vector - capacity(容量)

////////////////////////////////////////
//      2018/04/15 19:12:27
//      vector - capacity(容量)

/*
 Size指目前容器中实际有多少元素,对应的resize(size_type)会在容器尾添加或删除一些元素,
 来调整容器中实际的内容,使容器达到指定的大小。

 Capacity指最少要多少元素才会使其容量重新分配,对应reserve(size_type new_size)
 会这置这个capacity值,使它不小于所指定的new_size。

    故用reserve(size_type)只是扩大capacity值,这些内存空间可能还是“野”的,如果此时使用"[ ]"来
访问,则可能会越界。而resize(size_type new_size)会真正使容器具有new_size个对象。
*/
#include <iostream>
#include <vector>

using namespace std;

int main(){
    vector<int> v(10);

    cout << "Size of v = " << v.size() << endl;
    cout << "Capacity of v =" << v.capacity() << endl;

    v.resize(100);

    cout << "After resizing:" << endl;
    cout << "Size of v = " << v.size() << endl;
    cout << "Capacity of v = " << v.capacity() << endl;

    return 0;
}
/*
OUTPUT:
    Size of v = 10
    Capacity of v =10
    After resizing:
    Size of v = 100
    Capacity of v = 100
*/ 
阅读更多

扫码向博主提问

小小妖妖

非学,无以致疑;非问,无以广识
去开通我的Chat快问
版权声明:我是一只快乐的小妖精 https://blog.csdn.net/qwq1503/article/details/79952276
个人分类: STL
所属专栏: C++STL样列
上一篇vector-begin
下一篇vector-clear
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭