Поделиться через


<memory>

Определяет класс, оператор и несколько шаблонов, позволяющих выделять и освобождать объекты.

Требования

Заголовок:<память>

Пространство имен: std

Участники

Функции

Имя Описание
addressof Получает истинный адрес объекта.
align Возвращает указатель на диапазон заданного размера на основе указанного выравнивания и начального адреса.
allocate_shared Создает shared_ptr для объектов, выделенных и созданных для заданного типа с указанным распределителем.
atomic_compare_exchange_strong
atomic_compare_exchange_weak
atomic_compare_exchange_strong_explicit
atomic_compare_exchange_weak_explicit
atomic_exchange
atomic_exchange_explicit
atomic_is_lock_free
atomic_load
atomic_load_explicit
atomic_store
atomic_store_explicit
const_pointer_cast Постоянное приведение к shared_ptr.
declare_no_pointers Сообщает сборщику мусора, что символы, начинающиеся с указанного адреса и попадающие в блок указанного размера, не содержат трассируемых указателей.
declare_reachable Уведомляет сборщик мусора, что указанный адрес относится к выделенной памяти и является доступным.
default_delete Удаляет объекты, выделенные с помощью operator new. Подходит для использования с unique_ptr.
destroy_at Сокращенный destroy метод.
destroy Сокращенный destroy метод.
destroy_n Сокращенный destroy метод.
dynamic_pointer_cast Динамическое приведение к shared_ptr.
get_deleter Получение метода удаления из shared_ptr.
get_pointer_safety Возвращает тип безопасности указателя, подразумеваемый любым сборщиком мусора.
get_temporary_buffer Выделяет временное хранилище для последовательности элементов, которая не превышает заданное число элементов.
make_shared Создает и возвращает shared_ptr, указывающий на объект, для которого выделена память, созданный из нуля или нескольких аргументов с помощью распределителя по умолчанию.
make_unique Создает и возвращает unique_ptr, указывающий на выделенный объект, созданный из нуля или нескольких аргументов.
pointer_safety Перечисление всех возможных возвращаемых значений для get_pointer_safety.
return_temporary_buffer Отменяет выделение временной памяти, выделенной с помощью функции шаблона get_temporary_buffer.
static_pointer_cast Статическое приведение к shared_ptr.
swap Обмен двух объектов shared_ptr или weak_ptr.
undeclare_no_pointers Сообщает сборщику мусора, что символы в блоке памяти, определенном указателем на базовый адрес и размером блока, теперь могут содержать трассируемые указатели.
undeclare_reachable Уведомляет garbage_collector, что указанная область памяти является недоступной.
uninitialized_copy Копирует объекты из указанного входного диапазона в неинициализированный конечный диапазон.
uninitialized_copy_n Создает копию заданного числа элементов из итератора ввода. Копии помещаются в прямой итератор.
uninitialized_default_construct Сокращенный uninitialized_default_construct метод.
uninitialized_default_construct_n Сокращенный uninitialized_construct метод.
uninitialized_fill Копирует объекты с указанным значением в неинициализированный конечный диапазон.
uninitialized_fill_n Копирует объекты с указанным значением в указанное число элементов в неинициализированном конечном диапазоне.
uninitialized_move Сокращенный uninitialized_move метод.
uninitialized_move_n Сокращенный uninitialized_move метод.
uninitialized_value_construct Сокращенный uninitialized_value_construct метод.
uninitialized_value_construct_n Сокращенный uninitialized_value_construct метод.
uses_allocator_v

Операторы

Имя Описание
оператор!= Проверяет на неравенство между объектами распределителя указанного класса.
operator== Проверяет на равенство объекты распределителя указанного класса.
operator>= Проверяет, является ли один объект распределителя больше или равным второму объекту распределителя указанного класса.
operator< Проверяет, является ли один объект распределителя меньше или равным второму объекту распределителя указанного класса.
operator<= Проверяет, является ли один объект меньше или равным второму объекту указанного класса.
operator> Проверяет, является ли один объект больше второго объекта указанного класса.
operator<< Вставляет shared_ptr.

Классы

Имя Описание
allocator Шаблон класса описывает объект, который управляет выделением хранилища и освобождением массивов объектов типа Type.
allocator_traits Описывает объект, определяющий все сведения, необходимые контейнеру с распределителем.
auto_ptr Шаблон класса описывает объект, в котором хранится указатель на выделенный объект типа Type *, который гарантирует, что объект, к которому он указывает, удаляется при уничтожении его включающей auto_ptr.
bad_weak_ptr Сообщает о необрабатываемом исключении weak_ptr.
enabled_shared_from_this Помогает сформировать shared_ptr.
pointer_traits Предоставляет сведения, необходимые объекту типа allocator_traits для описания распределителя с типом Ptrуказателя.
raw_storage_iterator Класс-адаптер, который предоставляется, чтобы алгоритмы могли сохранять свои результаты в неинициализированной памяти.
shared_ptr Помещает объект с динамическим выделением памяти в оболочку интеллектуального указателя с подсчитанными ссылками.
unique_ptr Хранит указатель на собственный объект. Указатель не принадлежит никаким другим unique_ptr. unique_ptr удаляется при удалении владельца.
weak_ptr Создает оболочку слабо связанного указателя.

Структуры

Имя Описание
allocator_arg_t
default_delete
hash Предоставляет перегрузки, специализированные для unique_ptr и shared_ptr.
owner_less Разрешает смешанные сравнения общих и слабых указателей на основе собственности.
uses_allocator

Специализации

Имя Описание
Пустота распределителя<> Специализация распределителя шаблонов классов для типа void, определяющая только типы элементов, которые имеет смысл в этом специализированном контексте.

См. также

Справочник по файлам заголовков
Потокобезопасность в стандартной библиотеке C++