Advertisement

C++ vector resize、reserve、size与capacity函数解析

阅读量:

前言

在对resize()、reserve()、size()以及capacity()函数进行阐述之前,有必要先简要说明C++中vector的基本概念。

vector是一种顺序容器,其本质为可变大小的数组,能够支持高效的随机访问操作。然而,在非尾部位置执行元素的插入或删除操作时,可能会导致性能下降。

鉴于vector作为容器的属性,必然具备一系列相关功能,例如元素的添加、删除以及对容器尺寸的查询等操作。本文将着重探讨vector中resize()、reserve()、size()和capacity()这几个关键函数。

基本概念

  1. 容量

表示在容器需要重新分配存储空间之前,所能容纳的元素最大数量。

  1. 数量

指容器当前实际保存的元素数目。

注:容量代表容器理论上可存储的元素上限,而数量则是当前实际存储的元素数目。若仍有疑问,可参考我绘制的示意图(虽然风格独特,但能够简明扼要地说明问题)。

  1. resize

此操作不仅为容器分配了存储空间,同时也会生成相应的对象实例。

此处所指的空间即为capacity,而对象则对应于

全部评论 (0)

还没有任何评论哟~