Translations of this page?:

Стандартная библиотека шаблонов C++ (STL)

STL (стандартная библиотека шаблонов) - это общий набор шаблонов классов и алгоритмов, позволяющий программистам легко реализовывать стандартные структуры данных, такие как очереди, списки и стеки.

Структуры данных

STL предоставляет следующие конструкции, разделенные на три группы:

Идея STL состоит в том, что тяжелая часть работы при манипуляциях сложными структурами данных уже была сделана. Если программист захочет использовать стек целых чисел, то все, что ему нужно будет сделать, это написать такой код:

  stack<int> myStack;

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

Алгоритмы

Кроме того, STL предоставляет набор полезных алгоритмов: например, бинарный поиск, сортировку и for_each – они могут использоваться во множестве контейнеров или структур данных.

Итераторы

Итераторы реализуют общий метод доступа и навигации по элементам структур данных STL.

Функциональные объекты

Заголовочный файл <functional> определяет методы, связанные с созданием функциональных объектов.

Память

Заголовочный файл <memory> предоставляет простые структуры управления памятью, например, auto_ptr.

Полезности

Также есть несколько общих полезных методов, таких как make_pair в заголовочном файле <utility>.