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()); // 反转
相关推荐
风语者6667 小时前
perl踩坑系列=====正则表达式捕获
开发语言·perl
Mr_WangAndy7 小时前
C++设计模式_创建型模式_单件模式
c++·单例模式·设计模式
我科绝伦(Huanhuan Zhou)7 小时前
银河麒麟V10编译perl-5.42.0,并设置环境变量
开发语言·perl
大飞pkz7 小时前
【设计模式】享元模式
开发语言·设计模式·c#·享元模式
茉莉玫瑰花茶8 小时前
C++扩展 --- 并发支持库(补充3)
开发语言·c++
一只乔哇噻8 小时前
java后端工程师进修ing(研一版‖day49)
java·开发语言
枫叶丹48 小时前
【Qt开发】输入类控件(二)-> QTextEdit
开发语言·qt
半桔8 小时前
【网络编程】TCP 粘包处理:手动序列化反序列化与报头封装的完整方案
linux·网络·c++·网络协议·tcp/ip
JAVA学习通8 小时前
微服务项目->在线oj系统(Java-Spring)----[前端]
java·开发语言·前端
hrrrrb9 小时前
【Python】文件处理(二)
开发语言·python