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

std::pmr::polymorphic_allocator<T>::allocate_bytes

Материал из cppreference.com
 
 
Динамическое управление памятью
no section name
Ограниченные алгоритмы неинициализированной памяти
no section name
Поддержка сбора мусора
(C++11)(до C++23)
(C++11)(до C++23)
(C++11)(до C++23)
(C++11)(до C++23)
(C++11)(до C++23)
(C++11)(до C++23)



no section name
 
 
<tbody> </tbody>
[[nodiscard]] void* allocate_bytes( std::size_t nbytes, std::size_t alignment = alignof(std::max_align_t) );
(начиная с C++20)

Выделяет nbytes байт памяти с указанным выравниванием alignment, используя базовый ресурс памяти. Эквивалентно return resource()->allocate(nbytes, alignment);.

Параметры

nbytes количество байтов для выделения
alignment используемое выравнивание

Возвращаемое значение

Указатель на выделенное хранилище.

Примечание

Эта функция была введена для использования с полностью специализированным аллокатором std::pmr::polymorphic_allocator<>, но может быть полезна в любой специализации.

Тип возвращаемого значения void* (вместо, например, std::byte*) для поддержки преобразования в произвольный тип указателя U* с помощью static_cast<U*>.

Исключения

Может генерировать любые исключения, полученные вызовом resource()->allocate.

Смотрите также

выделяет сырую память, подходящую для объекта или массива
(public функция-элемент) [править]
выделяет память и создаёт объект
(public функция-элемент) [править]
выделяет память
(public функция-элемент) [править]
[static]
выделяет неинициализированное хранилище с помощью аллокатора
(public static функция-элемент std::allocator_traits) [править]
выделяет память
(public функция-элемент std::pmr::memory_resource) [править]