基础知识
1、list是由双向链表实现的,这也意味着,其内存空间是不连续的。因此,list不支持随机访问,没有提供[]操作符重载和at()函数,迭代器只能进行++和--操作,不能进行+n和-n操作。由于底层使用链表实现,list在任意位置插入和移除元素都非常高效。list适用于需要经常进行插入和移除操作,但不需要经常随机访问的应用场景。
2、与vector不同,list没有内存空间预分配机制,也没有提供capacity()和reserve()函数。每插入一个元素,都会从内存中直接分配;每移除一个元素,都会直接释放它占用的内存。
3、使用list前,需要先包含其头文件。
#include <list>
using namespace std;
list容器提供的主要接口可以参看下表。
接口 |
备注 |
size() |
返回list中的元素个数 |
empty()文章来源:https://www.toymoban.com/news/detail-425893.html |
判断lis文章来源地址https://www.toymoban.com/news/detail-425893.html |
到了这里,关于17 标准模板库STL之list的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!