Библиотека STL (Standart Template Library) - Компоненты STL

ОГЛАВЛЕНИЕ

Компоненты STL

В STL большое количество шаблонов, как классов так и функций. Мы можем их использовать с ООП или без него. Вообщем как хотим. Но в STL есть 3 основные компоненты.

  • Итераторы
  • Контейнеры
  • Алгоритмы

Итератор - это аналог указателя, с помощью них мы можем получать доступ к различных элементам данных. Можно использовать и пару итераторов для задания диапазона. Как и указатель для получения данных из итераторов их необходимо разыменовать с помошью операции *. Всего есть пять классов итераторов.

  1. Входные
  2. Выходные
  3. Однонаправленные
  4. Двунаправленные
  5. Произвольного доступа

Контейнеры - это структуры данных такие как списки, очереди и так далее. Доступ к данным находящимся внутри контейнера осуществляется с помощью итераторов :-) Есть следующие контейнеры. Могу пропустить, так что извините, если что.

  • vector - линейный массив
  • list - двухсвязанный список
  • deque - очередь с двухсторонгим доступом
  • set - ассоциативный массив уникальных ключей
  • multiset - ассоциативный массив с возможность дублирования ключей
  • map - ассоциативный массив с уникальными ключами и значениями
  • multimap - ассоциативный массив с возможность дублирования ключей и значений
  • stack - структура данных типа стек
  • queue - структура данных типа очередь

Алгоритмы - это шаблоны функций, с помощью которых производятся операции по работе с данными. Например сортировки или поиска.