当前位置: 首页 > news >正文

C++之list的用法介绍

C++之list的用法介绍


1)定义和初始化:

#include <list>  std::list<int> my_list;  // 定义一个整数类型的list  std::list<std::string> my_other_list = {"apple", "banana", "cherry"};  // 初始化一个字符串类型的list

2)插入元素:

// 在链表尾部插入元素  
my_list.push_back(1);  // 插入值为1的元素到链表尾部  
my_list.push_back(2);  // 插入值为2的元素到链表尾部  // 在链表头部插入元素  
my_list.push_front(0);  // 插入值为0的元素到链表头部  // 在指定位置插入元素  
my_list.insert(my_list.begin() + 3, 3);  // 在索引为3的位置插入值为3的元素

3)删除元素:

// 删除指定位置的元素  
my_list.erase(my_list.begin() + 1);  // 删除索引为1的元素  // 删除特定值的元素  
int to_delete = 2;  
my_list.remove(to_delete);  // 删除值为2的元素

4)访问元素:

// 通过索引访问元素(从0开始)  
int first_element = my_list[0];  // 获取第一个元素的值,这里为0  // 通过迭代器访问元素  
std::list<int>::iterator it = my_list.begin();  // 获取指向链表头部的迭代器  
int second_element = *it;  // 通过迭代器访问第二个元素的值,这里为1

5)其他操作:
list还支持其他一些操作,如交换两个链表、反转链表等。可以使用相应的成员函数进行操作。例如:

std::list<int> list1, list2;  // 定义两个整数类型的list  
std::swap(list1, list2);  // 交换两个链表的内容

相关文章:

C++之list的用法介绍

C之list的用法介绍 1&#xff09;定义和初始化&#xff1a; #include <list> std::list<int> my_list; // 定义一个整数类型的list std::list<std::string> my_other_list {"apple", "banana", "cherry"}; // 初始化一个…...

Mybatis-plus 内部提供的 ServiceImpl<M extends BaseMapper<T>, T> 学习总结

作用 当集成Mybatis-Plus 后&#xff0c;我们的大部分数据库操作都可以通过 XxxxxMapper &#xff0c;同时 Mybatis-plus 在Mapper 提供基本操作方法的同时&#xff0c;也提供类基础的 serviceImpl 来帮助我们完成一些常见的基本操作。 使用 一般情况下&#xff0c;我们首先…...

yolov5 利用Labelimg对图片进行标注

首先打开yolov5-master&#xff0c;在data文件中新建一个文件夹来存放你需要跑的数据&#xff0c;例如我这次跑的是羽毛球&#xff0c;文件把文件取名为badminton。使用其他文件夹例如images也可以&#xff0c;就是跑多了以后不好整理&#xff0c;然后点击 选中刚刚你存放数据的…...

完整版付费进群带定位源码

看到别人发那些不是挂羊头卖狗肉&#xff0c;要么就是发的缺少文件引流的。恶心的一P 这源码是我付费花钱买的分享给大家&#xff0c;功能完整。 搭建教程 nginx1.2 php5.6--7.2均可 最好是7.2 第一步上传文件程序到网站根目录解压 第二步导入数据库&#xff08;shujuk…...

华为L410上制作内网镜像模板01

原文链接&#xff1a;华为L410上制作离线安装软件模板01 hello&#xff0c;大家好啊&#xff0c;今天给大家带来一篇在内网搭建Apache服务器&#xff0c;用于安装完内网操作系统后&#xff0c;在第一次开机时候&#xff0c;为系统安装软件&#xff0c;今天给大家用WeChat举例&a…...

linuxC语言缓冲区及小程序的实现

文章目录 1.文件缓冲区1.1介绍1.2缓冲文件系统1.3冲刷函数fflush1.4认识linux下的缓冲区 2.linux小程序的实现2.1 回车\r和换行\n2.2倒计时程序2.3进度条小程序sleep/usleep代码运行结果 1.文件缓冲区 1.1介绍 为缓和 CPU 与 I/O 设备之间速度不匹配&#xff0c;文件缓冲区用以…...

MySQL数据库基本操作-DDL 数据库基础知识

目录标题 1、数据库操作1-1 查询所有数据库1-2 创建数据库1-3 选择使用那个数据库1-4 删除数据库 2、数据库表操作2-1 创建数据库表2-2 查看当前数据库所有表名称2-3 查看指定某个表的创建语句2-4 查看表结构2-5 删除表 3、修改表结构格式3-1 修改表添加列3-2 修改列名和类名3-…...

基于JavaWeb+SpringBoot+Vue摩托车商城微信小程序系统的设计和实现

基于JavaWebSpringBootVue摩托车商城微信小程序系统的设计和实现 源码传送入口前言主要技术系统设计功能截图Lun文目录订阅经典源码专栏Java项目精品实战案例《500套》 源码获取 源码传送入口 前言 近年来&#xff0c;随着移动互联网的快速发展&#xff0c;电子商务越来越受到…...

idea代码快捷键Mac版

1、查询任何东西 双击 Shift2、文件内查找 Command F 3、文件内替换 Command R4、全局查找&#xff08;根据路径&#xff09; Command Shift F5、在当前文件跳转到某一行的指定处 Command L6、退回 / 前进到上一个操作的地方 Command Option 方向键左Command Opt…...

分享76个Python管理系统源代码总有一个是你想要的

分享76个Python管理系统源代码总有一个是你想要的 学习知识费力气&#xff0c;收集整理更不易。 知识付费甚欢喜&#xff0c;为咱码农谋福利。 下载链接&#xff1a;https://pan.baidu.com/s/1JtcEHG9m8ro4-dc29kVyDg?pwd8888 提取码&#xff1a;8888 项目名称 A simpl…...

Springboot养老院信息管理系统的开发-计算机毕设 附源码27500

Springboot养老院信息管理系统的开发 摘 要 随着互联网趋势的到来&#xff0c;各行各业都在考虑利用互联网将自己推广出去&#xff0c;最好方式就是建立自己的互联网系统&#xff0c;并对其进行维护和管理。在现实运用中&#xff0c;应用软件的工作规则和开发步骤&#xff0c;…...

在虚拟机中安装vim和net-tools,mysql

首先在虚拟机中创建vim目录 sudo mkdir -p /home/user/tools/vim然后开始进行安装 yum install vim -yyum install net-toolsmysql参考链接 安装mysql在虚拟机中...

【Excel】函数sumif范围中符合指定条件的值求和

SUMIF函数是Excel常用函数。使用 SUMIF 函数可以对报表范围中符合指定条件的值求和。 Excel中sumif函数的用法是根据指定条件对若干单元格、区域或引用求和。 sumif函数语法是&#xff1a;SUMIF(range&#xff0c;criteria&#xff0c;sum_range) sumif函数的参数如下&#xff…...

k8s上对Pod的管理部分详解

目录 一.Pod结构介绍 1.user container 2.pause 二.Pod工作形式介绍 1.自主式pod 2.控制器管理下的pod 三.对Pod的操作介绍 1.run/apply -f/create -f运行pod 2.get查看pod信息 3.exec操作运行中的pod &#xff08;1&#xff09;进入运行中的pod &#xff08;2&…...

4.4.2 结构可以将 string类作为成员吗

// structure template { }; 4.4.2 结构可以将 string类作为成员吗 可以将成员name指定为string类对象而不是字符数组吗?即可以像下面这样声明结构吗? #include <string> struct inflatable std :: string name; float volume; double price; 大体上说,答案是肯定的。实…...

npm install 安装总结

npm install moduleName 会把moduleName 包安装到node_modules目录中不会修改package.json之后运行npm install命令时&#xff0c;不会自动安装moduleName npm install moduleName -g 安装模块到全局&#xff0c;不会在项目node_modules目录中保存模块包。不会将模块依赖写入de…...

二十三种设计模式全面解析-组合模式与享元模式的结合应用:实现对象的共享和高效管理

在前文中&#xff0c;我们介绍了组合模式的基本原理和应用&#xff0c;以及它在构建对象结构中的价值和潜力。然而&#xff0c;组合模式的魅力远不止于此。在本文中&#xff0c;我们将继续探索组合模式的进阶应用&#xff0c;并展示它与其他设计模式的结合使用&#xff0c;以构…...

jenkins分步式构建环境(agent)

rootjenkins:~# netstat -antp|grep 50000 tcp6 0 0 :::50000 ::&#x1f617; LISTEN 5139/java 1.52 安装Jenkins rootubuntu20:~# dpkg -i jenkins_2.414.3_all.deb 配置各种类型的Agent的关键之处在于启动Agent的方式 ◼ JNLP Agent对应着“通过Java Web启动代理”这种方…...

前端开发学习指南

前端是一个看似入门门槛不高&#xff0c;但要学好很难的领域。前端的知识体系庞杂又松散&#xff0c;技术演进快&#xff0c;如果摸不清脉络的话很容易陷入盲人摸象的困境甚至跑偏。 其实只要掌握了正确的方法&#xff0c;学习前端和学好前端就只是个时间问题&#xff0c;希望下…...

环境变量小节

这是写的第二篇环境变量博客&#xff0c;写了一年多了&#xff0c;第一次出现把自己博客删了的情况&#xff0c;不知道为什么明明发表了&#xff0c;然后就把草稿箱和回收站的删了&#xff0c;结果晚上发现没发表&#xff0c;回收站删除是无法找回的&#xff0c;以后还是要慎重…...

HUNYUAN-MT结合LSTM进行译后编辑:提升文学翻译的流畅性与文采

HUNYUAN-MT结合LSTM进行译后编辑&#xff1a;提升文学翻译的流畅性与文采 文学翻译&#xff0c;向来是机器翻译领域里一块难啃的骨头。它不像技术文档或新闻稿&#xff0c;追求的是字对字的准确。文学翻译的灵魂在于“传神”&#xff0c;在于保留原文的韵律、意境和文采。直接…...

告别移植烦恼:手把手教你用NRF52832的ESB库直连NRF24L01模块(附完整代码)

NRF52832与NRF24L01无缝通信实战指南 1. 理解ESB协议栈的核心机制 NRF52832的增强型 ShockBurst (ESB) 协议栈是实现与NRF24L01兼容通信的关键。这套协议栈通过硬件加速和智能状态管理&#xff0c;为2.4GHz无线通信提供了高效的数据传输机制。 协议栈工作流程解析&#xff1a; …...

一句话自动剪Vlog!连BGM都能丝滑卡点,CutClaw有点太会了

挑高光、对节拍、梳理剧情&#xff0c;这些繁琐的剪辑细活&#xff0c;CutClaw 现在一句话就能接过去。颠覆体验&#xff01;AI 不止会拼接素材&#xff0c;更能听指令、卡节奏过去的视频自动剪辑方法&#xff0c;核心能力往往局限于文本对齐或画面高光提取。它们难以捕捉影视艺…...

告别‘C:’报错!CCS12.2下DSP28335生成.bin/.hex文件的保姆级配置流程

CCS12.2下DSP28335生成.bin/.hex文件的完整避坑指南 当你在深夜调试DSP28335项目&#xff0c;终于通过仿真器完成程序验证&#xff0c;准备生成.bin文件进行现场升级时&#xff0c;突然跳出的"C:不是内部或外部命令"报错&#xff0c;是不是让你瞬间睡意全无&#xff…...

Python实战:三种GUI库打造可玩性五子棋(附完整源码)

1. 为什么用Python开发五子棋 五子棋作为经典策略游戏&#xff0c;用Python实现不仅能巩固编程基础&#xff0c;还能深入理解游戏逻辑与GUI交互。我最初选择用Python开发五子棋&#xff0c;就是看中它快速验证想法的特性——短短几十行代码就能看到棋子落在棋盘上的效果&#x…...

数字信号处理——上采样(Upsampling)和下采样(Downsampling)

目录 1. 上采样(upsampling) 2. 下采样(downsampling) 1. 上采样(upsampling) 上采样的过程(亦称为“升采样(upscaling)”或“扩展(expansion)”)是在不改变原信号基本内容的前提下&#xff0c;为其添加更多数据点,即增加数据的空间分布率和采样频率。当这一过程应用于信…...

3个三极管+LED就能搞定?手把手教你DIY电线断点检测神器(附电路图)

电子爱好者必备&#xff1a;零基础打造高灵敏度电线断点检测器 电线断点检测是每个电子爱好者和家庭维修达人都可能遇到的棘手问题。想象一下&#xff0c;当你面对一捆杂乱的电线&#xff0c;需要快速定位其中哪一段出现了断路&#xff0c;传统的万用表检测方式不仅效率低下&am…...

告别玄学调参!手把手教你用SX1262 LoRa模块实现5公里稳定通信(附完整代码)

告别玄学调参&#xff01;手把手教你用SX1262 LoRa模块实现5公里稳定通信&#xff08;附完整代码&#xff09; 在物联网设备开发中&#xff0c;LoRa技术因其远距离、低功耗的特性成为许多项目的首选。但当你真正开始使用SX1262这类LoRa模块时&#xff0c;可能会发现实际通信距离…...

别再用老教程了!手把手教你用Proteus 8.13和8086+8255搭建一个真能用的投票器(附完整汇编源码)

从零构建80868255投票器&#xff1a;Proteus 8.13实战避坑指南 在微机原理实验课上&#xff0c;最令人沮丧的莫过于按照网络教程一步步操作&#xff0c;最后却发现电路根本无法运行。特别是当使用老旧的Proteus版本教程搭配新版软件时&#xff0c;各种兼容性问题会让初学者寸步…...

打卡5:链表元素移除算法详解

题目链接&#xff1a;https://leetcode.cn/problems/remove-linked-list-elements/ 视频讲解&#xff1a;https://www.bilibili.com/video/BV18B4y1s7R9struct ListNode* removeElements(struct ListNode* head, int val) {// 创…...