STL(第三课):list

STL中的list是一个双向链表,它可以动态地将元素插入和删除,提供了许多方便的操作接口。下面我们来讲解一下C++STL list的相关内容。

list的创建比较简单,只需要包含头文件#include<list>,然后使用std::list模板即可声明一个list对象。

cpp 复制代码
#include <list>
using namespace std;

list<int> myList; //声明一个空的int类型list

基本操作:

cpp 复制代码
myList.push_back(value);   //在list后面添加一个元素
myList.push_front(value);  //在list前面添加一个元素
myList.pop_back();         //删除list后面的元素
myList.pop_front();        //删除list前面的元素
myList.insert(iter, value);//在指定位置插入一个元素
myList.erase(iter);        //删除指定位置的元素
myList.clear();            //清空list中所有元素

iter是一个迭代器,代表list中的某一个元素。

相关推荐
龙泉寺天下行走10 小时前
[PowerShell 入门教程] 第9.5天(间章):PowerShell 常见 Cmdlet 速查手册
开发语言·php
Rock_yzh10 小时前
LeetCode算法刷题——560. 和为 K 的子数组
数据结构·c++·学习·算法·leetcode·职场和发展·哈希算法
muxin-始终如一10 小时前
Semaphore 使用及原理详解
java·开发语言·python
名扬91110 小时前
webrtc编译问题-ubuntu
开发语言·python
白云千载尽11 小时前
Python 初学者 / 中级开发者常踩坑的 10 个坑 —— 要用好几年才能彻底搞清楚的
开发语言·python
Evand J11 小时前
【MATLAB雷达滤波代码】二维,单雷达跟踪与滤波。EKF融合雷达的距离、角度+目标IMU数据。附代码下载链接
开发语言·matlab·雷达·ekf·雷达跟踪·角度观测
weixin_4624462311 小时前
【原创实现】Python 实现 PDF 批量压缩工具(支持逐个确认 / 批量处理 / 多级压缩)
开发语言·python·pdf
沐知全栈开发11 小时前
Bootstrap 轮播教程与最佳实践
开发语言
FAREWELL0007511 小时前
Lua学习记录(4) --- Lua中多文件调用 以及 关于位运算符的零碎知识点
开发语言·学习·lua
yaoxin52112311 小时前
256. Java 集合 - 掌握 Java 的 merge () 方法:提升 Map 操作效率与灵活性的关键
java·开发语言