std::__new_allocator< _Tp >(3) Library Functions Manual std::__new_allocator< _Tp >(3)

std::__new_allocator< _Tp > - An allocator that uses global new, as per C++03 [20.4.1].

#include <memory>

Inherited by std::allocator< value_type >, std::allocator< _Tp >, __gnu_cxx::new_allocator< _Tp >, and std::allocator< typename >.


typedef std::ptrdiff_t difference_type
typedef std::true_type propagate_on_container_move_assignment
typedef std::size_t size_type
typedef _Tp value_type


constexpr __new_allocator (const __new_allocator &) noexcept
template<typename _Tp1 > constexpr __new_allocator (const __new_allocator< _Tp1 > &) noexcept
_Tp * allocate (size_type __n, const void *=static_cast< const void * >(0))
void deallocate (_Tp *__p, size_type __n)
__new_allocator & operator= (const __new_allocator &)=default


template<typename _Up > constexpr bool operator== (const __new_allocator &, const __new_allocator< _Up > &) noexcept

class std::__new_allocator< _Tp >"An allocator that uses global new, as per C++03 [20.4.1].

This is precisely the allocator defined in the C++ Standard.

  • all allocation calls operator new
  • all deallocation calls operator delete

This is the default base-class implementation of std::allocator, and is also the base-class of the __gnu_cxx::new_allocator extension. You should use either std::allocator or __gnu_cxx::new_allocator instead of using this directly.

Template Parameters

_Tp Type of allocated object.

Generated automatically by Doxygen for libstdc++ from the source code.

libstdc++