Other allocators may be defined. Any class having the same members as this default allocator and following its minimum requirements can be used as an allocator with the standard containers.
Other allocators may be defined. Any class
Alloc for which
allocator_traits<Alloc> produces a valid instantiation with the appropriate members defined can be used as an allocator on standard containers (
Alloc may or may not implement the functionality through member functions).
Except for its destructor, no member of the standard default
allocator class template shall introduce data races. Calls to member functions that allocate or deallocate storage shall occur in a single total order, and each such deallocation shall happen before the next allocation (if any) in this order.