Компоненты STL


STL обеспечивает большое количество классов и функций, которые использовать как в приложениях, написанных с помощью ООП, так и без использования этой технологии. Имеется около 50 алгоритмов, которые носят универсальный характер и не связаны со специфическими типами данных.

Перечислим 3 основные компоненты библиотеки:

1. Итераторы – аналогичны указателям, обеспечивают доступ к элементам данных
2. Контейнеры – являются структурами данных, подобных спискам, векторам, стекам и представленными шаблонами классов. Доступ к элементам контейнера осуществляют обычно с помощью итераторов, порождаемыми контейнерами.
3. Алгоритм – представляет собой шаблоны функций, обрабатывающие данные. Например, алгоритм может сортировать вектор или осуществлять поиск в списке объектов. Эти функции не нуждаются в конкретных сведениях о типах и структурах данных.

Кроме STL реализация стандартной библиотеки C++ содержит вспомогательные компоненты: Обработку ошибок с использованием исключительных ситуаций, математические классы, классы численных пределов и шаблон строкового класса.

Заголовочные классы

Используя заголовочные файлы стандартной библиотеки C++, можно отбросить расширение .h. Например, чтобы включить алгоритм библиотеки используется следующий оператор:

#include<algorithm>

Приведем заголовки, включаемые для применения различных структур данных в контейнерах:

<bitset> — битовое множество
<deque> — очередь с двусторонним доступом
<list> — список
<map> — отображение
<set> — множество
<stack> — стек
<vector>