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

相关推荐
Dream it possible!17 小时前
LeetCode 面试经典 150_回溯_组合(99_77_C++_中等)
c++·leetcode·面试·回溯
三斗米17 小时前
从思维链到思维树:一步步解锁大语言模型的推理能力
算法
前端小L18 小时前
贪心算法专题(二):波动中的智慧——只取极值「摆动序列」
数据结构·算法·贪心算法
aini_lovee18 小时前
基于Jousselme距离改进D-S证据理论matlab实现
开发语言·算法·matlab
再睡一夏就好18 小时前
深入解析Linux页表:从虚拟地址到物理内存的映射艺术
linux·运维·服务器·c语言·c++·页表·缺页异常
白兰地空瓶18 小时前
你以为树只是画图?不——它是算法面试的“隐形主角”
前端·javascript·算法
好易学·数据结构18 小时前
可视化图解算法74:最小花费爬楼梯
数据结构·算法·leetcode·动态规划·力扣
Starry_hello world18 小时前
C++ 线程 (3)
c++
Maỿbe18 小时前
力扣hot图论部分
算法·leetcode·图论
雍凉明月夜18 小时前
c++ 精学笔记记录Ⅲ
c++·笔记·学习