|
Контейнерные классы
Ниже приведены контейнеры, определенные библиотекой STL.
| Контейнер |
Описание |
Требуемый заголовок |
| bitset |
Битовое множество |
<bitset> |
| deque |
Дек(двусторонняя очередь, или очередь с двусторонним доступом) |
<deque> |
| list |
Линейный список |
<list> |
| map |
Отображение. Хранит пары "ключ/значение", в которых каждый ключ связан только с одним значением |
<map> |
| multimap |
Мультиотображение. Хранит пары "ключ/значение", в которых каждый ключ может быть связан с двумя или более значениями |
<map> |
| multiset |
Множество, в котором каждый элемент необязательно уникален(мультимножество) |
<set> |
| priority_queue |
Приоритетная очередь queue |
<queue> |
| queue |
Очередь |
<queue> |
| set |
Множество, в котором каждый элемент уникален |
<set> |
| stack |
Стек |
<stack> |
| vector |
Динамический массив |
<vector> |
В последующих разделах подробно рассмотрен каждый из контейнеров. Поскольку контейнеры реализованы с помощью шаблонных классов, это значит, что вы можете использовать различные типы данных. В приведенных ниже описаниях обобщенный тип Т представляет тип данных, сохраняемых контейнером.
Поскольку имена типов в шаблонных классах произвольны, контейнерные классы объявляют typedef-версии этих типов, что конкретизирует имена типов. Некоторые из наиболее популярных имен typedef приведены ниже.
| size_type |
Некоторый целочисленный тип, приблизительно эквивалентный типу size_t |
| reference |
Ссылка на элемент |
| const_reference |
const-ссылка на элемент |
| difference_type |
Может представлять разность между двумя адресами |
| iterator |
Итератор |
| const_iterator |
const-итератор |
| reverse_iterator |
Реверсивный итератор |
| const_reverse_iterator |
Константный реверсивный итератор |
| value_type |
Тип значения, сохраняемого в контейнере(то же самое, что и обобщенный тип т) |
| allocator_type |
Тип распределителя |
| key_type |
Тип ключа |
| key_compare |
Тип функции, которая сравнивает два ключа |
| mapped_type |
Тип значения,сохраняемого в отображении(то же самое, что и обобщенный тип Т) |
| value_compare |
Тип функции, которая сравнивает два значения |
| value_type |
Тип обрабатываемых значений (то же самое, что и обобщенный тип T) |
| pointer |
Тип указателя |
| const_pointer |
Тип константного указателя |
| container_type |
Тип контейнера |
|