std::list

来自cppreference.com
跳转到: 导航, 搜索
#include <list>
 
template< 
    class T, 
    class Allocator = std::allocator<T> 
> class list;

list是一个支持在任何地方快速插入和移除元素的容器。不支持快速随机访问。 它被实现为双向链表。相对于单向链表它提供了双向迭代功能而仅使用了很小的空间开销。

目录

[编辑] 成员类型

成员类型 定义
value_type T
allocator_type Allocator
size_type Unsigned integral type (usually size_t)
difference_type Signed integral type (usually ptrdiff_t)
reference Allocator::reference (pre-C++11 version)
value_type& (C++11 version)
const_reference Allocator::const_reference (pre-C++11 version)
const value_type& (C++11 version)
pointer T* (pre-C++11 version)
std::allocator_traits<Allocator>::pointer​ (C++11 version)
const_pointer const T* (pre-C++11\n ​ version)
std::allocator_traits<Allocator>::const_pointer​ (C++11 version)
iterator Bidirectional iterator
const_iterator Constant bidirectional iterator
reverse_iterator std::reverse_iterator<iterator>
const_reverse_iterator std::reverse_iterator<const_iterator>

[编辑] 成员函数

(constructor) 创建链表
(destructor) 销毁链表
operator= 赋值给容器
assign 赋值给容器
get_allocator 返回相关的分配器
[编辑] 元素访问
front 返回 list 第一个元素
back 返回 list 最后一个元素
[编辑] 迭代器
begin, cbegin 返回指向头部的迭代器
end, cend 返回指向尾部的迭代器
rbegin, crbegin 返回指向反向容器头部的“反向迭代器”
rend, crend 返回指向反向容器尾部的“反向迭代器”
[编辑] 容量
empty 检查容器是否为空
size 返回元素个数
max_size 返回元素个数可能的最大值
[编辑] 改变状态
clear 清除所有元素
insert 插入元素
emplace | /todo (C++11 feature)
erase 清除元素
push_back 在尾部插入一个元素
emplace_back | /todo (C++11 feature)
pop_back 清除尾部的元素
push_front 在头部插入一个元素
emplace_front | /todo (C++11 feature)
pop_back 清除头部的元素
resize 改变存储元素的个数
swap 与另一个 vector 交换所有内容
[编辑] 操作
merge 合并两个排序好的链表
splice 从另一个链表移动元素
remove, remove_if 移动满足条件的元素
reverse 逆转元素的顺序
unique 移动连续相等的元素
sort 对元素排序

[编辑] 非成员函数

[[cpp/container/list/operator==, operator!=, operator<, operator<, operator>, operator>= | operator==, operator!=, operator<, operator<, operator>, operator>=]] 字典序比较容器的值
std::swap 特化的std::swap算法
个人工具
名字空间
操作
导航
工具箱
其他语言