STL容器相关

Posted heartbeat358

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STL容器相关相关的知识,希望对你有一定的参考价值。

顺序容器

顺序容器有以下三种:可变长动态数组 vector、双端队列 deque、双向链表 list。

 

它们之所以被称为顺序容器,是因为元素在容器中的位置同元素的值无关,即容器不是排序的。将元素插入容器时,指定在什么位置(尾部、头部或中间某处)插入,元素就会位于什么位置。

关联容器

关联容器有以下四种:set、multiset、map、multimap。关联容器内的元素是排序的。插入元素时,容器会按一定的排序规则将元素放到适当的位置上,因此插入元素时不能指定位置。

所有容器都有以下两个成员函数:

int size():返回容器对象中元素的个数。

bool empty():判断容器对象是否为空。

 

顺序容器和关联容器还有以下成员函数:

begin():返回指向容器中第一个元素的迭代器。

end():返回指向容器中最后一个元素后面的位置的迭代器。

rbegin():返回指向容器中最后一个元素的反向迭代器。

rend():返回指向容器中第一个元素前面的位置的反向迭代器。

erase(...):从容器中删除一个或几个元素。该函数参数较复杂,此处省略。

clear():从容器中删除所有元素。

 

如果一个容器是空的,则 begin() 和 end() 的返回值相等,rbegin() 和 rend() 的返回值也相等。

 

顺序容器还有以下常用成员函数:

front():返回容器中第一个元素的引用。

back():返回容器中最后一个元素的引用。

push_back():在容器末尾增加新元素。

pop_back():删除容器末尾的元素。

insert(...):插入一个或多个元素。该函数参数较复杂,此处省略。

以上是关于STL容器相关的主要内容,如果未能解决你的问题,请参考以下文章

《STL源码剖析》相关面试题总结

STL 序列容器

STL容器总结

一文带你认识STL序列式容器--list

论Qt容器与STL

C++STL之ACM相关知识大全