一、介绍
std::vector
是 C++ 标准模板库(STL)中的一种序列容器,它提供了一种能够存储同类型元素的动态数组。与普通的 C++ 数组相比,std::vector
的大小可以动态变化,能够根据需要自动地扩展或缩小其存储空间。以下是对 std::vector
的详细介绍:
二、基本特性
- 动态数组:
std::vector
本质上是一个能够动态调整大小的数组。 - 随机访问:支持通过下标访问元素,时间复杂度为 O(1)。
- 内存管理:
std::vector
会自动管理其存储的内存,包括分配和释放。 - 异常安全性:
std::vector
的操作通常是异常安全的,但需要注意内存分配和元素复制/移动可能引发的异常。
三、元素访问与操作
- 访问元素:可以使用下标运算符
[]
或at()
方法访问元素。at()
方法在越界时会抛出std::out_of_range
异常。 - 插入元素:可以使用
push_back()
在末尾插入元素,或使用insert()
在指定位置插入元素。 - 删除元素:可以使用
pop_back()
删除末尾元素,或使用