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


<memory>

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

#include <memory>

Члены

Функции

addressof

Получает истинный адрес объекта.

align

Возвращает указатель на диапазон заданного размера на основе указанного выравнивания и начального адреса.

allocate_shared

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

checked_uninitialized_copy

То же, что и uninitialized_copy, но обеспечивает принудительное использование проверенного итератора в качестве итератора вывода.

checked_uninitialized_fill_n

То же, что и uninitialized_fill_n, но обеспечивает принудительное использование проверенного итератора в качестве итератора вывода.

const_pointer_cast

Постоянное приведение к shared_ptr.

declare_no_pointers

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

declare_reachable

Уведомляет сборщик мусора, что указанный адрес относится к выделенной памяти и является доступным.

default_delete

Удаляет объекты, выделенные с помощью operator new. Подходит для использования с unique_ptr.

dynamic_pointer_cast

Динамическое приведение к shared_ptr.

get_deleter

Получение метода удаления из shared_ptr.

get_pointer_safety

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

get_temporary_buffer

Выделяет временное хранилище для последовательности элементов, которая не превышает заданное число элементов.

make_shared

Создает и возвращает shared_ptr, указывающий на объект, для которого выделена память, созданный из нуля или нескольких аргументов с помощью распределителя по умолчанию.

make_unique

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

owner_less

Разрешает смешанные сравнения общих и слабых указателей на основе собственности.

pointer_safety

Перечисление всех возможных возвращаемых значений для get_pointer_safety.

return_temporary_buffer

Отменяет выделение временной памяти, выделенной с помощью функции шаблона get_temporary_buffer.

static_pointer_cast

Статическое приведение к shared_ptr.

буфер обмена

Обмен двух объектов shared_ptr или weak_ptr.

unchecked_uninitialized_copy

То же, что и uninitialized_copy, но позволяет использовать непроверенный итератор как итератор вывода при определении _SECURE_SCL=1.

unchecked_uninitialized_fill_n

То же, что и uninitialized_fill_n, но позволяет использовать непроверенный итератор как итератор вывода при определении _SECURE_SCL=1.

undeclare_no_pointers

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

undeclare_reachable

Уведомляет garbage_collector, что указанная область памяти является недоступной.

uninitialized_copy

Копирует объекты из указанного входного диапазона в неинициализированный конечный диапазон.

uninitialized_copy_n

Создает копию заданного числа элементов из итератора ввода. Копии помещаются в прямой итератор.

uninitialized_fill

Копирует объекты с указанным значением в неинициализированный конечный диапазон.

uninitialized_fill_n

Копирует объекты с указанным значением в указанное число элементов в неинициализированном конечном диапазоне.

Операторы

operator!=

Проверяет на неравенство между объектами распределителя указанного класса.

operator==

Проверяет на равенство объекты распределителя указанного класса.

operator>=

Проверяет, является ли один объект распределителя больше или равным второму объекту распределителя указанного класса.

operator<

Проверяет, является ли один объект распределителя меньше или равным второму объекту распределителя указанного класса.

operator<=

Проверяет, является ли один объект меньше или равным второму объекту указанного класса.

operator>

Проверяет, является ли один объект больше второго объекта указанного класса.

operator<<

Вставляет shared_ptr.

Классы

allocator

Класс шаблона описывает объект, который управляет выделением и освобождением памяти для массивов объектов типа Тип.

allocator_traits

Описывает объект, определяющий все сведения, необходимые контейнеру с распределителем.

auto_ptr

Класс шаблона описывает объект, в котором хранится указатель на объект типа Тип*, для которого выделена память, гарантирующий, что объект, на который он указывает, удаляется при удалении входящего в его состав элемента 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<void>

Специализация распределителя класса шаблона для типа void, определяющая только типы членов, имеющие смысл в данном специализированном контексте.

См. также

Ссылки

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

Другие ресурсы

Члены <память>

Файлы заголовков стандартных библиотек C++