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<>, но может быть полезна и в любой другой специализации.
См. также
|
(C++20) | освобождает сырую память, полученную с помощью allocate_object (открытая функция-член) |
|
(C++20) | уничтожает объект и освобождает занимаемую им память (открытая функция-член) |
|
[static] | освобождает память с помощью аллокатора (открытая статическая функция-член std::allocator_traits<Alloc>) |
| освобождает память (открытая функция-член 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