std::allocator_traits<Alloc>:: destroy
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Определено в заголовке
<memory>
|
||
|
template
<
class
T
>
static void destroy ( Alloc & a, T * p ) ; |
(начиная с C++11)
(constexpr начиная с C++20) |
|
Вызывает деструктор объекта, на который указывает
p
. По возможности делает это через вызов
a.
destroy
(
p
)
. Если это невозможно (например, когда
Alloc
не имеет функцию-член
destroy()
), тогда вызывает
деструктор
*
p
напрямую, как
p
-
>
~T
(
)
(до C++20)
std::
destroy_at
(
p
)
(начиная с C++20)
.
Содержание |
Параметры
| a | - | аллокатор, используемый для уничтожения |
| p | - | указатель на уничтожаемый объект |
Возвращаемое значение
(нет)
Примечания
Поскольку эта функция обеспечивает автоматический переход к прямому вызову деструктора, функция-член
destroy()
является опциональным
Allocator
требованием начиная с C++11.
Пример
|
Этот раздел не завершён
Причина: отсутствует пример |
Смотрите также
|
(until C++20)
|
уничтожает объект в выделенной памяти
(публичная функция-член
std::allocator<T>
)
|