std::allocator_traits::destroy

std::allocator_traits::destroy

Defined in header <memory>
template< class T >
static void destroy( Alloc& a, T* p );
(since C++11)

Calls the destructor of the object pointed to by p. If possible, does so by calling a.destroy(p). If not possible (e.g. a does not have the member function destroy()), then calls the destructor of *p directly, as p->~T().

Parameters

a - allocator to use for destruction
p - pointer to the object being destroyed

Return value

(none).

Notes

Because this function provides the automatic fall back to direct call to the destructor, the member function destroy() is an optional Allocator requirement since C++11.

See also

(deprecated in C++17)
destructs an object in allocated storage
(public member function of std::allocator)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/cpp/memory/allocator_traits/destroy

在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

意见反馈
返回顶部