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

Библиотека утилит

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

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

  • библиотеки для поддержки языка,
  • библиотеки общего назначения.

Содержание

[править] Поддержка языка

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

[править] Подержка типов

  • Базовые типы (например, std::size_t, std::nullptr_t),
  • RTTI (например, std::type_info),
  • статический анализ (например, std::is_integral, std::rank).

[править] Динамическое управление памятью

  • Умные указатели (например, std::shared_ptr),
  • распределители (например, std::allocator),
  • управление памятью в стиле C (например, std::malloc).

[править] Обработка ошибок

  • Исключения (например, std::exception, std::logic_error),
  • утверждения (например, assert),
  • утверждения момента компиляции (static_assert).

[править] Списки инициализации

позволяет использовать синтаксис инициализации списка для инициализации, не набившие оскомину-типов данных
Оригинал:
allows the use of синтаксис инициализации списка to initialize non plain-old-data types
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон класса) [edit]

[править] Variadic–функции

Поддержка функций, которые принимают произвольное число параметров (например, через va_start, va_arg, va_end).


[править] Плюшки общего назначения

[править] Управление программой

  • Прекращение (например, std::abort, std::atexit),
  • окружение (например, std::system),
  • сигналы (например, std::raise).

[править] Дата и время

  • Учёт времени (например, std::chrono::time_point, std::chrono::duration),
  • получение даты и времени в стиле C (например, std::time, std::clock).

[править] BitSet

реализует битовый массив постоянной длины
(класс) [edit]

[править] Функциональные объекты

  • Частичное применение функции (например, std::bind),
  • обобщённые функции (например, std::function),
  • предопределённые функторы (например, std::plus, std::equal_to).

[править] Пары и кортежи

реализует двоичный кортеж, т.е. пару значений
Оригинал:
implements binary tuple, i.e. a pair of values
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон класса) [edit]
(C++11)
реализует контейнер фиксированного размера, который содержит элементы возможно различных типов
(шаблон класса) [edit]
тег типа используются для выбора правильной перегрузки функции для кусочно строительства
Оригинал:
tag type used to select correct function overload for piecewise construction
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(класс) [edit]
Объект типа piecewise_construct_t используется для устранения неоднозначности функции для кусочно строительства
Оригинал:
an object of type piecewise_construct_t used to disambiguate functions for piecewise construction
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(константа) [edit]

[править] Swap, forward, move

свопы значения двух объектов
Оригинал:
swaps the values of two objects
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
(C++11)
Вперед аргумента функции
Оригинал:
forwards a function argument
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
(C++11)
получает RValue ссылки
Оригинал:
obtains an rvalue reference
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
получает RValue ссылку, если движение конструктор не бросают
Оригинал:
obtains an rvalue reference if the move constructor does not throw
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]
(C++11)
получает тип выражения в невычисленного контексте
Оригинал:
obtains the type of expression in unevaluated context
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(шаблон функции) [edit]

[править] Операторы отношения

Defined in namespace std::rel_ops
автоматически генерирует операторы сравнения основанные на определённых пользователем operator== и operator<
(шаблон функции) [edit]

[править] Хэш-коды

(C++11)
объект хеш-функции
(шаблон класса) [edit]