page contents

vector的reserve()和resize()方法之间有什么区别?

轩辕小不懂 发布于 2022-01-08 10:45
阅读 722
收藏 0
分类:C/C++开发
  • c
  • c++
  • 2845
    Nen
    Nen
    - 程序员

    首先,vector的容量capacity()是指在不分配更多内存的情况下可以保存的最多元素个数,而vector的大小size()是指实际包含的元素个数;

    其次,vector的reserve(n)方法只改变vector的容量,如果当前容量小于n,则重新分配内存空间,调整容量为n;如果当前容量大于等于n,则无操作;

    最后,vector的resize(n)方法改变vector的大小,如果当前容量小于n,则调整容量为n,同时将其全部元素填充为初始值;如果当前容量大于等于n,则不调整容量,只将其前n个元素填充为初始值。

    请先 登录 后评论