list 类
STL 列表类是序列容器的一个模板类,用于将它们的元素保持为线性排列,并允许在序列的任何位置高效插入和删除。 序列存储为双向链接的元素列表,每个包含一些 Type 类型的成员。
template < class Type, class Allocator=allocator<Type> > class list
参数
类型
要存储在列表中的元素数据类型。Allocator
表示所存储分配器对象的类型,该分配器对象封装有关列表的内存分配和解除分配的详细信息。 这个参数的值是可选的,它的默认值是 allocator<Type>。
备注
容器类型选择通常应根据应用程序所需的搜索和插入的类型。 当对任何元素的随机访问超出限制并且仅要求在序列的末尾插入或删除元素时,矢量应作为用于管理序列的首选容器。 当需要随机访问并且在序列起始处和末尾处插入和删除元素已到达极限时,应首选类 deque 容器进行操作。
列表成员函数 merge、reverse、unique、remove 和 remove_if 已针对对列表的操作进行了优化,它们可作为泛型对应函数的高性能替代函数。
当成员函数必须插入或删除列表中的元素时,将发生列表的重新分配。 在所有这类情况下,仅指向受控制序列被消除部分的迭代器或引用将变为无效。
包括 STL 标准标头 <list>,以定义 container 模板类列表和多个支持模板。
构造函数
构造一个列表,它具有特定大小或它的元素具有特定值,或具有特定 allocator 或作为某个其他列表副本。 |
Typedef
表示列表对象的 allocator 类的类型。 |
|
提供可读取列表中 const 元素的双向迭代器的类型。 |
|
提供指向列表中 const 元素的指针的类型。 |
|
提供对存储于列表中供读取和执行 const 操作的 const 元素的引用的类型。 |
|
提供可读取列表中任何 const 元素的双向迭代器的类型。 |
|
提供引用同一列表中的元素的两个迭代器之间的差异的类型。 |
|
提供可读取或修改列表中任何元素的双向迭代器的类型。 |
|
提供指向列表中元素的指针的类型。 |
|
提供对存储于列表中供读取和执行 const 操作的 const 元素的引用的类型。 |
|
提供可读取或修改反向列表中的元素的双向迭代器的类型。 |
|
计算列表中元素的数目的类型。 |
|
表示列表中存储的数据类型的类型。 |
成员函数
将元素从列表中擦除并将一组新的元素复制到目标列表。 |
|
返回对列表中最后一个元素的引用。 |
|
返回发现列表中第一个元素的位置的迭代器。 |
|
返回发现列表中第一个元素的位置的常量迭代器。 |
|
返回发现一个列表中最后一个元素之后的位置的敞亮表达式。 |
|
消除列表中的全部元素。 |
|
返回发现反向列表中第一个元素的位置的常量迭代器。 |
|
返回用于发现反向列表中最后一个元素之后的位置的常量迭代器。 |
|
将构造的元素插入到列表中的指定位置。 |
|
在列表的结尾处添加一个就地构造的元素。 |
|
在列表的起始位置添加一个就地构造的元素。 |
|
测试列表是否为空。 |
|
返回用于发现列表中最后一个元素之后的位置的迭代器。 |
|
从列表中的指定位置移除一个或一系列元素。 |
|
返回对列表中第一个元素的引用。 |
|
返回用于构造列表的 allocator 对象的一个副本。 |
|
将一个、几个或一系列元素插入列表中的指定位置。 |
|
返回列表的最大长度。 |
|
将元素从参数列表移除,将它们插入目标列表,将新的组合元素集以升序或其他指定顺序排序。 |
|
删除列表末尾的元素。 |
|
删除列表起始处的一个元素。 |
|
在列表的末尾添加元素。 |
|
在列表的开头添加元素。 |
|
返回发现反向列表中第一个元素的位置的迭代器。 |
|
清除列表中与指定值匹配的元素。 |
|
将满足指定谓词的元素从列表中消除。 |
|
返回发现反向列表中最后一个元素之后的位置的迭代器。 |
|
为列表指定新的大小。 |
|
反转列表中元素的顺序。 |
|
返回列表中元素的数目。 |
|
按升序或其他顺序关系排列列表中的元素。 |
|
将元素从参数列表中删除或将它们插入目标列表。 |
|
交换两个列表的元素。 |
|
从列表中删除满足某些其他二元谓词的相邻重复元素或相邻元素。 |
运算符
用另一个列表的副本替换列表中的元素。 |
要求
标头:<list>