std::pmr::polymorphic_allocator<T>::deallocate_object
template< class U > void deallocate_object( U* p, std::size_t n = 1 ); | (с C++20) |
Освобождает память, на которую указывает p, которая должна была быть выделена с помощью std::pmr::memory_resource x, которая сравнивается как равная *resource(), используя x.allocate(n * sizeof(U), alignof(U)), обычно через вызов allocate_object<U>(n).
Эквивалентно deallocate_bytes(p, n * sizeof(U), alignof(U));.
Параметры
| p | - | указатель на память для освобождения |
| n | - | количество объектов типа U, для которых была выделена память |
Исключения
Не выбрасывает ничего.
Примечания
Эта функция была введена для использования с полностью специализированным выделенным std::pmr::polymorphic_allocator<>, но она может быть полезна в любой специализации.
См. также
|
(C++20) | освобождение необработанной памяти, полученной от allocate_bytes (публичный член-функция) |
|
(C++20) | уничтожает и освобождает объект (публичный член-функция) |
|
[статический] | освобождает память, используя выделенный (публичная статическая функция-член 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/w/cpp/memory/polymorphic_allocator/deallocate_object