深入学习c++(STL之容器,stdlist)

本文详细介绍了C++中的std::list容器,包括其特点、初始化方式、迭代器操作、插入与删除元素的方法以及特性,如remove、merge、sort等。std::list不支持随机访问,但提供了快速的头尾访问和插入删除,且在操作过程中保持迭代器有效性。
摘要由CSDN通过智能技术生成

#include <list>

// vector 是 c++ 98中引入的动态数组 
namespace std {
  template<typename T,typename Allocator = allocator<T>>
  class list;
}
// 特点,不支持随机访问元素,访问头部和尾部元素速度快
// 任何位置插入删除元素都很快,常量时间内完成
// 插入和删除不会造成迭代器失效
// 对于异常支持的好,出现异常对于list而言,要么不成功,要么什么影响没有

using Group = std::list<float>;
// 多种初始化
Group a;
Group b = a;
Group c = {};// 空初化
Group d(a);
Group e(10);参数1为int时,则是申请多少个int的空间
Group f(10,1.0f);// 申请10个元素,每个元素的值均为1.0f
Group g(a.begin(),a.end());// 迭代器从头赋到尾
Group h({1.0,2.0,3.0});// 初始化三个元素
Group j = {1.0,2.0,3.0};// c++ 11 特有的用法


d.empty() //是否为空 实现  return b.size() == 0;
d.size();// 元素的数量
d.max_size();// 一般用不着,只有大公司才考虑这个

// 迭代器相关
a.begin();
a.end()
a.cbegin();不可修改的
a.cend()
a.rbegin();倒转循环
a.rend();
a.crbegin()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值