Spec-Zone.ru › C++

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<>, но она может быть полезна в любой специализации.

См. также

deallocate_bytes
(C++20)
освобождение необработанной памяти, полученной от allocate_bytes
(публичный член-функция)
delete_object
(C++20)
уничтожает и освобождает объект
(публичный член-функция)
deallocate
[статический]
освобождает память, используя выделенный
(публичная статическая функция-член 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/w/cpp/memory/polymorphic_allocator/deallocate_object

Spec-Zone.ru

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