c++ 容器vector基础

vector 容器基础操作代码

vector 是 C++ STL 中最常用的动态数组容器,以下是其基础操作的代码示例:

1. 头文件

复制代码
#include <vector>
#include <iostream>
using namespace std;

2. 创建和初始化

复制代码
vector<int> v1;                  // 空vector
vector<int> v2(5);               // 包含5个元素,默认值为0
vector<int> v3(5, 10);           // 包含5个元素,每个都是10
vector<int> v4 = {1, 2, 3, 4};   // 初始化列表
vector<int> v5(v4);              // 拷贝构造

3. 添加元素

复制代码
v1.push_back(10);       // 在末尾添加元素10
v1.emplace_back(20);    // C++11,更高效的添加方式
v1.insert(v1.begin(), 5); // 在开头插入5

4. 访问元素

复制代码
cout << v3[2];          // 访问第3个元素(不检查边界)
cout << v3.at(2);       // 访问第3个元素(会检查边界)
cout << v3.front();     // 第一个元素
cout << v3.back();      // 最后一个元素

5. 大小和容量

复制代码
cout << v3.size();      // 元素数量
cout << v3.capacity();  // 当前分配的内存能容纳的元素数
v3.reserve(100);        // 预留空间
cout << v3.empty();     // 判断是否为空

6. 删除元素

复制代码
v3.pop_back();          // 删除最后一个元素
v3.erase(v3.begin());   // 删除第一个元素
v3.erase(v3.begin()+1, v3.begin()+3); // 删除范围[1,3)的元素
v3.clear();             // 清空所有元素

7. 遍历vector

复制代码
// 使用下标
for(size_t i = 0; i < v4.size(); ++i) {
    cout << v4[i] << " ";
}

// 使用迭代器
for(auto it = v4.begin(); it != v4.end(); ++it) {
    cout << *it << " ";
}

// C++11范围for循环
for(int num : v4) {
    cout << num << " ";
}

8. 其他操作

复制代码
v4.resize(10);          // 调整大小,新增元素默认初始化
v4.swap(v5);            // 交换两个vector的内容
sort(v4.begin(), v4.end()); // 排序
reverse(v4.begin(), v4.end()); // 反转
相关推荐
执携1 小时前
Python(6) -- 数据容器
开发语言·python
芥子沫3 小时前
VSCode添加Python、Java注释技巧、模板
开发语言·前端·javascript
小陈又菜4 小时前
【C++】类和对象--类中6个默认成员函数(2) --运算符重载
开发语言·c++·运算符重载
yuezhilangniao4 小时前
关于开发语言的一些效率 从堆栈角度理解一部分c java go python
java·c语言·开发语言
Ares-Wang4 小时前
Node.js 》》bcryptjs 加密
开发语言·javascript·node.js
vvilkim5 小时前
深入理解Java访问修饰符:封装的艺术
java·开发语言
最爱吃南瓜5 小时前
JS逆向实战案例之----【通姆】252个webpack模块自吐
开发语言·javascript·爬虫·webpack·js逆向·算法模拟
hqxstudying6 小时前
java分布式定时任务
java·开发语言·分布式
weixin_307779137 小时前
C++实现MATLAB矩阵计算程序
开发语言·c++·算法·matlab·矩阵