Пространства имён
Варианты
Действия

Стандартная Библиотека С++

Материал из cppreference.com
< cpp

Стандартная библиотека C++ предоставляет широкий спектр возможностей, которые можно использовать в стандартном C++.

Категория

Библиотека поддержки языка предоставляет компоненты, необходимые для определённых частей языка C++, например выделения памяти (new/delete) и обработки исключений.

Библиотека концептов описывает библиотечные компоненты, которые программы C++ могут использовать для проверки во время компиляции аргументов шаблона и выполнения диспетчеризации функций на основе свойств типов.

(начиная с C++20)

Библиотека диагностики обеспечивает согласованную основу для сообщения об ошибках в программе C++, включая предопределённые классы исключений.

Библиотека управления памятью предоставляет компоненты для управления памятью, в том числе умные указатели и распределитель с областью видимости (начиная с C++11).

Библиотека метапрограммирования описывает средства для использования в шаблонах и во время константной оценки, включая свойства типа, целочисленную последовательность (начиная с C++14) и рациональную арифметику.

(начиная с C++11)

Библиотека общих утилит включает компоненты, используемые другими элементами библиотеки, такими как предопределённый распределитель памяти для динамического управления памятью, а также компоненты, используемые в качестве инфраструктуры в программах на C++, например кортежи и (начиная с C++11) обёртки функций.

Библиотека строк поддерживает работу с текстом, представленным в виде однородных последовательностей следующих типов: char, char8_t (начиная с C++20), char16_t, char32_t (начиная с C++11), wchar_t и любых других символьных типов.

Библиотеки контейнеров, итераторов, диапазонов (начиная с C++20) и алгоритмов предоставляют программе C++ доступ к подмножеству наиболее широко используемых алгоритмов и структур данных.

Библиотека числовых значений предоставляет компоненты числовых алгоритмов и комплексных чисел, которые расширяют поддержку обработки чисел. Компонент valarray обеспечивает поддержку обработки n одновременно, что потенциально может быть реализовано как параллельные операции на платформах, поддерживающих такую обработку. Компонент случайных чисел предоставляет средства для генерации псевдослучайных чисел. (начиная с C++11)

Библиотека времени предоставляет полезные утилиты времени.

Библиотека локализации обеспечивает расширенную поддержку интернационализации для обработки текста.

Библиотека ввода/вывода предоставляет компоненты iostream, которые являются основным механизмом ввода и вывода программ C++. Их можно использовать с другими элементами библиотеки, в частности со строками, локалями и итераторами.

Библиотека регулярных выражений обеспечивает сопоставление и поиск регулярных выражений.

Библиотека поддержки потоков предоставляет компоненты для создания потоков и управления ими, включая атомарные операции, взаимное исключение и взаимодействие между потоками.

(начиная с C++11)

Содержимое библиотеки

Стандартная библиотека C++ предоставляет определения для сущностей и макросов, описанных в кратком обзоре заголовков стандартной библиотеки C++, если не указано иное.

Все сущности библиотеки, кроме operator new и operator delete, определены в пространстве имён std или в пространствах имён, вложенных в пространство имён std (кроме сущностей для возможностей стандартной библиотеки C, смотрите ниже). Не указано, объявляются ли имена, объявленные в определённом пространстве имён, непосредственно в этом пространстве имён или во встроенном пространстве имён внутри этого пространства имён. (начиная с C++11)

Заголовки

Каждый элемент стандартной библиотеки C++ объявляется или определяется (в зависимости от обстоятельств) в заголовке . Заголовок не обязательно является исходным файлом, а последовательности, разделённые < и > в именах заголовков, не обязательно являются допустимыми именами исходных файлов.

Стандартная библиотека C++ предоставляет заголовки библиотеки C++ и дополнительные заголовки C++ для средств библиотеки C (описания смотрите на странице 'заголовки'):

Заголовки библиотеки С++
<algorithm> <iomanip> <list> <queue> <string>
<bitset> <ios> <locale> <set> <strstream>
<complex> <iosfwd> <map> <sstream> <typeinfo>
<deque> <iostream> <memory> <stack> <utility>
<exception> <istream> <new> <stdexcept> <valarray>
<fstream> <iterator> <numeric> <streambuf> <vector>
<functional> <limits> <ostream>
Заголовки, добавленные в C++11