vector - capacity(容量)

12人阅读 评论(0) 收藏 举报
分类:
////////////////////////////////////////
//      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
*/ 
查看评论

JavaSE之集合实战视频课程

使用Collection接口及其实现类: ArrayList类 LinkedList类 Vector类 HashSet类 TreeSet类 掌握HashMap类
  • 2016年10月12日 10:49

C++ STL之 vector的capacity和size属性区别

vector中这两个属性很容易弄混淆。 size是当前vector内变量真实占用的大小。 capacity是预留的空间大小。...
  • u013575812
  • u013575812
  • 2016-04-17 00:07:46
  • 11404

关于vector大小(size)和容量(capacity)总结

主要介绍了vector 容器大小相关的操作函数(size、max_szie、capacity),同时介绍了容器大小超出容器capacity能力会内存重新分配以及iterator失效简单分析。同时给出了...
  • xiao3404
  • xiao3404
  • 2016-04-08 22:37:03
  • 21953

vector缩减容量

在C++标准库容器vector的容量是不会自动的缩减的,也就是说删除元素操作,其引用、指针、迭代器也会继续有效。那么当在一个较大的vector中删除了大量的元素之后,其实际的size比较小,而其cap...
  • himayan46
  • himayan46
  • 2016-04-30 23:48:51
  • 833

vector的reserve和resize以及capacity和size

1.capacity    指容器在不分配新的存储空间的前提下它最多可以保存多少元素。 2. size    指当前容器已经保存的元素的数目。   在弄清这两个概念以后,...
  • u014082714
  • u014082714
  • 2015-03-12 14:31:44
  • 1750

vector大小与容量的关系

vector优异性能的秘诀之一,就是配置比其所容纳的元素所需更多的内存。 vector中的函数capacity()返回vector实际能够容纳的元素数量,如果超出这个数量,vector就会重新配...
  • zhuozhibin
  • zhuozhibin
  • 2015-01-25 15:07:47
  • 2323

STL vector中的capacity()方法(14)

//翻译的不好的地方请多多指导,可以在下面留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。 转载请注明出处:http://blog.c...
  • guang_jing
  • guang_jing
  • 2014-08-12 17:43:39
  • 1186

vector 中 size()和 capacity()的区别

size()指容器当前拥有的元素个数; capacity()指容器在必须分配存储空间之前可以存储的元素总数。 例如: /* vector 中 size()和 capacity()的...
  • xwdpepsi
  • xwdpepsi
  • 2013-08-19 08:54:38
  • 10664

MessageBox.Show报错:容量超出了最大容量 参数名:capacity .

此问题是由于用了皮肤控件,
  • guoyong4321
  • guoyong4321
  • 2014-11-22 13:06:44
  • 1158

C++ Vector size和capcity的增加方式

创建一个vector对象vector a;后, vector对象a的size和capacity都是0。 当插入第一个元素后,size和capacity都变为1 当插入第二个元素后,size和cap...
  • jackywgw
  • jackywgw
  • 2017-07-14 16:06:15
  • 573
    个人资料
    持之以恒
    等级:
    访问量: 4万+
    积分: 1736
    排名: 2万+
    xxxxx