Defined in header
template< class T >
static void destroy( Alloc& a, T* p );
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().
|a||-||allocator to use for destruction|
|p||-||pointer to the object being destroyed|
 Return value
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
| destructs an object in allocated storage
(public member function of