`#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` 中添加元素,并通过索引访问元素。

相关推荐
会员源码网1 小时前
构造函数抛出异常:C++对象部分初始化的陷阱与应对策略
c++
有意义2 小时前
深度拆解分割等和子集:一维DP数组与倒序遍历的本质
前端·算法·面试
xlp666hub3 小时前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
用户726876103373 小时前
解放双手的健身助手:基于 Rokid AR 眼镜的运动计时应用
算法
Wect4 小时前
LeetCode 17. 电话号码的字母组合:回溯算法入门实战
前端·算法·typescript
不想写代码的星星4 小时前
static 关键字:从 C 到 C++,一篇文章彻底搞懂它的“七十二变”
c++
xlp666hub20 小时前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
ZhengEnCi1 天前
08c. 检索算法与策略-混合检索
后端·python·算法
程序员小崔日记1 天前
大三备战考研 + 找实习:我整理了 20 道必会的时间复杂度题(建议收藏)
算法·408·计算机考研
lizhongxuan1 天前
AI小镇 - 涌现
算法·架构