C++ STL vector预分配空间——resize和reserve

vector的resize:既分配了空间,也创建了对象,会调用构造函数
vector的reserve:reserve()表示容器预留空间,但不是真正的创建对象,需要通过insert()或push_back()等操作创建对象
reserve()只修改capacity大小,不修改size大小,
resize()既修改capacity大小,也修改size大小。
因此,在只需要足够的空间而不需要生成对象时(通常是为了节约插入元素的时间),应该选择reserve方法。

转载:https://blog.csdn.net/benobug/article/details/105711287

posted @ 2022-05-08 14:54  牛犁heart  阅读(603)  评论(0编辑  收藏  举报