Spec-Zone.ru › C++

std::pmr::polymorphic_allocator<T>::deallocate_bytes

void deallocate_bytes( void* p,
                       std::size_t nbytes,
                       std::size_t alignment = alignof(std::max_align_t) );
(начиная с C++20)

Освобождает память, на которую указывает p. Она должна быть выделена из std::pmr::memory_resource x, сравнимого с *resource(), с помощью x.allocate(nbytes, alignment), обычно посредством вызова allocate_bytes(nbytes, alignment).

Эквивалентно resource()->deallocate(p, nbytes, alignment);.

Параметры

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

Исключения

Ничего не выбрасывает.

Примечания

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

См. также

deallocate_object
(C++20)
освобождает сырую память, полученную с помощью allocate_object
(открытая функция-член)
delete_object
(C++20)
уничтожает объект и освобождает занимаемую им память
(открытая функция-член)
deallocate
[static]
освобождает память с помощью аллокатора
(открытая статическая функция-член std::allocator_traits<Alloc>)
deallocate
освобождает память
(открытая функция-член std::pmr::memory_resource)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/memory/polymorphic_allocator/deallocate_bytes

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API