std::allocator<T>::destroy
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header  <memory>
  | 
||
|   void destroy( pointer p );  | 
(until C++11) | |
|   template< class U > void destroy( U* p );  | 
 (since C++11)  (deprecated in C++17) (removed in C++20)  | 
|
Calls the destructor of the object pointed to by p
1) Calls ((T*)p)->~T()
2) Calls p->~U()
Parameters
| p | - | pointer to the object that is going to be destroyed | 
Return value
(none)
See also
|    [static]  | 
   destructs an object stored in the allocated storage  (function template)  |