STL_list_c++常见操作用法解析

list的概述

list (双端链表)
list不能随机存取元素,所以不支持at.(position)函数和[]操作符,可以对其迭代器执行++操作,
因为它不是连续的空间,所以不能这样操作迭代器(例如:it+2或it+3)
vector的内存空间是预先分配的,所以有capacity
list没有提前分配空间,所以它并没有capacity方法
使用时需包含头文件与命名空间:

include <list>
using namespace std;

一.list 对象的构造

	//list 对象的默认构造
	list<int> lInt;			//定义一个存放int类型的list容器
	list<float> lFloat;		//定义一个存放float类型的list容器
	list<string> lString;		//定义一个存放string类型的list容器
	list<student> lStu;		//定义一个存放自定义类类型的list容器
	list<int*> listInt;		//定义一个存放int指针类型的list容器

	//list 对象的带参构造
	list<int> lInt1(10);		//将元素个数定义为10,值全默认为0
	list<int> lInt2(10, 5);	//将元素个数定义为10,值全为5
	list<int> lInt3(lInt2.begin(),lInt.end()); //将lInt2里[begin end)区间的元素拷贝给lInt3
	list<int> lInt4(lInt1);	//将lInt1里所有的元素拷贝给lInt3

二.list 头部尾部添加和移除操作

	list<int> lInt;

	//push_front头部添加
	lInt.push_front(1);	//头部添元素,值为1
	lInt.push_front(2);	//头部添元素,值为2

	//push_back尾部添加
	lInt.push_back(3);	//尾部添元素,值为3
	lInt.push_back(4);	//尾部添元素,值为4

	//pop_front头部移除
	lInt.pop_front();		//移除头部元素,也就是2
	lInt.pop_front();		//移除头部元素,也就是1

	//pop_back尾部移除
	lInt.pop_back();		//移除尾部元素,也就是4
	lInt.pop_back();		//移除尾部元素,也就是3

三.list 数据存取

	list<int> lInt;

	lInt.push_back(1);
	lInt.</
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值