list容器方法总结——中文博客最清晰完整的整理

list

注:

  • *标记的为c++11新特性,构造函数默认为c++11
  • 函数原型省略了一些细节,只展示实际需要填写的情况(分配器已经隐藏了,需要可以去c++reference查看)
  • 参数栏表示传入的两个参数的意义而不是类型
  • 返回值栏表示类型而不是意义
  • 粉红色表示为c++11新特性

构造函数

方法(method)原型(prototype)参数(param)返回值(return)功能(function)
构造函数explicit list (const allocator_type& alloc = allocator_type());构造器allocdefault创建一个list
构造函数explicit list (size_type n, const value_type& val = value_type(),const allocator_type& alloc = allocator_type());容量n,值val,构造器allocdefault创建一个容量为n,值为val的list
构造函数list (InputIterator first, InputIterator last,const allocator_type& alloc = allocator_type());一个表示开始迭代器fitst,一个表示结束的last,构造器allocdefault创建一个list,内容与first与last之间的内容相同
构造函数list (const list& x);一个list xdefault创建一个list,内容与list相同
析构函数N/AN/AN/A销毁容器
重载=list& operator= (const list& x);一个list的引用xlist的引用将x的值赋给容器

迭代器方法

方法(method)原型(prototype)参数(param)返回值(return)功能(function)
beginiterator begin() noexcept;迭代器返回指向第一个元素的迭代器
beginconst_iterator begin() const noexcept;迭代器返回指向第一个元素的迭代器
enditerator end() noexcept;迭代器返回一个迭代器,指向最后一个元素的下一个位置
endconst_iterator end() const noexcept;迭代器返回一个迭代器,指向最后一个元素的下一个位置
rbeginreverse_iterator rbegin() noexcept;迭代器返回一个反向迭代器,指向最后一个元素
rendreverse_iterator rbegin() noexcept;迭代器返回一个迭代器,指向第一个元素的前一个位置
cbeginconst_iterator cbegin() const noexcept;迭代器返回一个常量迭代器,指向首个元素
cendconst_iterator end() noexcept;迭代器返回一个常量迭代器,指向最后一个元素的下一个位置
crbeginconst_ reverse_iterator rbegin() noexcept;迭代器返回一个常量反向迭代器,指向最后一个元素
crendconst_ reverse_iterator rbegin() noexcept;迭代器返回一个常量迭代器,指向第一个元素的前一个位置

容量方法

方法(method)原型(prototype)参数(param)返回值(return)功能(function)
sizeconstexpr size_type size() noexcept;非负整数返回容器的元素的数量
max_sizeconstexpr size_type max_size() noexcept;非负整数返回容器所能容纳的最大的元素的数量
emptyconstexpr bool empty() noexcept;bool返回是否为空

元素访问方法

方法(method)原型(prototype)参数(param)返回值(return)功能(function)
front reference front();对应元素的引用返回第一个元素的引用
frontconst_reference front() const;对应元素的引用返回第一个元素的引用
backreference back();对应元素的引用返回最后一个元素的引用
backconst_reference back() const;对应元素的引用返回最后一个元素的引用

编辑方法

方法(method)原型(prototype)参数(param)返回值(return)功能(function)
assign void assign (InputIterator first, InputIterator last);一个表示开始迭代器fitst,一个表示结束的last将两个迭代器中间的内容分配给容器,替换其当前内容,并相应地修改其大小。
assignvoid assign (size_type n, const value_type& val);容器大小n,容器的值val将容器中的内容替换为n个val,并相应地修改其大小。
emplace_frontvoid emplace_front (Args&&... args);参数……在容器前面构造性的插入参数
push_frontvoid push_front (const value_type& val);值val在容器前面插入一个元素val
pop_frontvoid pop_front();弹出容器第一个元素
emplace_backvoid emplace_back (Args&&... args);参数……在容器后面构造性的插入参数
push_backvoid push_back (const value_type& val);值val在容器后面插入一个元素val
pop_backvoid pop_back();弹出容器最后元素
emplace iterator emplace (const_iterator position, Args&&... args);一个表示位置迭代器,参数……一个迭代器在迭代器对应的位置后面构造性的插入参数,并返回插入后的最后一个元素的迭代器
eraseiterator erase (iterator position);一个表示位置迭代器一个迭代器移除对应迭代器位置的元素
eraseiterator erase (iterator first, iterator last);一个表示开始迭代器fitst,一个表示结束的last一个迭代器移除开始迭代器与结束迭代器之间的元素
swapvoid swap (list& x);一个list的引用x通过x的内容交换容器的内容
resizevoid resize (size_type n, value_type val = value_type());容器大小n将容器的大小重定义为n
clearvoid clear();清空容器

操作方法

方法(method)原型(prototype)参数(param)返回值(return)功能(function)
splicevoid splice (iterator position, list& x);表示位置的迭代器,一个list的引用x将元素从x转移到容器中,并将其插入position指向位置
splicevoid splice (iterator position, list& x, iterator i);表示位置的迭代器,一个list的引用x,迭代器i将元素从x转移到容器中,并将其i位置的元素插入position位置
splicevoid splice (iterator position, list& x, iterator first, iterator last);表示位置的迭代器,一个list的引用x,表示开始迭代器first,表示结束迭代器last将元素从x转移到容器中,并将其first至last之间的值插入position位置。
removevoid remove (const value_type& val);值val从容器中移除所有等于val的元素
remove_ifvoid remove_if (Predicate pred);判断逻辑从容器中移除所有等于pred判断为true的的元素
uniquevoid unique();删除容器中重复的元素(只有当元素与紧靠它前面的元素进行比较时,才会从列表容器中删除该元素。)
uniquevoid unique (BinaryPredicate binary_pred);判断逻辑binary_pred删除容器中符合判断语句
mergevoid merge (list& x);一个list的引用x将一个(有序的)按照顺序合并到(有序的)容器中
merge void merge (list& x, Compare comp);一个list的引用x与比较方法将一个(有序的)按照(自定义的)顺序合并到(有序的)容器中
sortvoid sort();排序
sortvoid sort (Compare comp);一个比较方法按照comp排序
reversevoid reverse();反转list

观测方法

方法(method)原型(prototype)参数(param)返回值(return)功能(function)
get_allocatorallocator_type get_allocator() const;分配器返回与列表容器关联的分配器的拷贝
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值