STL中vector的size和capacity的区别


  • size表示vector中元素的个数

  • capacity表示vector可容纳的元素大小,超过这个会引发vector的重分配(这里会造成之前的迭代器失效,有兴趣的同学可以自己试试看)

  • resize可以改变size大小,如果改小会丢掉后面的元素,如果改大会对新增加的元素进行值初始化

  • reserve可以改变capacity的大小,但是注意的是capacity大于size的地方都是不能使用的
    capacity和reserve只适用于string和vector,STL容器中拥有capacity属性的只有string和vector

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 标签(空格分隔): STL 运用STL,可以充分利用该库的设计,让我为简单而直接的问题设计出简单而直接的解决方案,...
    认真学计算机阅读 1,522评论 0 10
  • vector和string 所有的STL容器都很有用,但是相比于其他容器,vector和string更常用。本章从...
    lintong阅读 1,319评论 0 3
  • vector(向量) C++中的一种数据结构,确切的说是一个类。它相当于一个动态的数组,当程序员无法知道自己需要的...
    资深小夏阅读 504评论 0 2
  • 等天亮。 闽南、塞北、戈壁滩。最近好像对季节温度、空气湿度、穿衣指数、食物类别、海拔高度、日出时间、日落时间。。。...
    高小花0218阅读 299评论 0 0
  • 淡蓝的火焰舔舐着瓦罐 酒水与杯盏缠绵 鹿与玫瑰厮磨 木樨香的梵音如醉 晨曦的雨露还不肯坠 紫砂壶上积了几层灰 墙上...
    程北阅读 538评论 2 1