`#include <vector>`

`#include <vector>` 是 C++ 语言中的一个预处理指令,用于引入标准模板库(Standard Template Library,简称 STL)中的 `<vector>` 头文件。STL 是 C++ 的一部分,提供了一系列的通用类模板,`<vector>` 是其中之一。

`<vector>` 头文件定义了 `std::vector` 类模板,它是一个动态数组,可以存储任意类型的元素。`std::vector` 提供了动态数组的功能,可以自动调整大小以适应元素的添加和删除。

`std::vector` 的一些关键特性:

  1. 动态大小:`std::vector` 可以根据需要自动调整大小,不需要事先指定大小。

  2. 连续内存:`std::vector` 中的元素存储在连续的内存块中,这使得元素访问速度快。

  3. 随机访问:`std::vector` 支持通过索引快速访问元素,类似于普通数组。

  4. 提供迭代器:`std::vector` 提供迭代器,可以用于遍历容器中的元素。

  5. 范围操作:`std::vector` 支持范围构造、范围赋值等操作。

使用 `std::vector` 的基本语法如下:

```cpp

#include <vector>

std::vector<int> vec; // 创建一个 int 类型的空 vector

vec.push_back(10); // 添加一个元素

vec.push_back(20);

vec.push_back(30);

int firstElement = vec[0]; // 访问第一个元素

```

在这个例子中,`vec` 是一个 `int` 类型的 `std::vector` 对象。我们使用 `push_back` 方法向 `vector` 中添加元素,并通过索引访问元素。

相关推荐
王老师青少年编程40 分钟前
csp信奥赛C++高频考点专项训练之贪心算法 --【线性扫描贪心】:数列分段 Section I
c++·算法·编程·贪心·csp·信奥赛·线性扫描贪心
王老师青少年编程41 分钟前
csp信奥赛C++高频考点专项训练之贪心算法 --【线性扫描贪心】:分糖果
c++·算法·贪心算法·csp·信奥赛·线性扫描贪心·分糖果
_日拱一卒43 分钟前
LeetCode:2两数相加
算法·leetcode·职场和发展
py有趣43 分钟前
力扣热门100题之零钱兑换
算法·leetcode
董董灿是个攻城狮1 小时前
Opus 4.7 来了,我并不建议你升级
算法
leaves falling1 小时前
C++模板进阶
开发语言·c++
无敌昊哥战神2 小时前
【保姆级题解】力扣17. 电话号码的字母组合 (回溯算法经典入门) | Python/C/C++多语言详解
c语言·c++·python·算法·leetcode
脱氧核糖核酸__2 小时前
LeetCode热题100——238.除了自身以外数组的乘积(题目+题解+答案)
数据结构·c++·算法·leetcode
再卷也是菜2 小时前
算法提高篇(1)线段树(上)
数据结构·算法
py有趣2 小时前
力扣热门100题之单词拆分
算法·leetcode