std::__new_allocator(3cxx)

std::__new_allocator3cxx

An allocator that uses global new, as per c++03 [20.4.1].

Usage

#include <memory>

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

Public Types

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

Public Member Functions

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

Friends

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

Detailed Description

template<typename _Tp>

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.

Releases

2 releases since Debian 12 (Bookworm); the text changed 1 time.

  1. 12
  2. 13

Author

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

From libstdc++-12-doc 12.4.0-5 in Debian 13 (Trixie). Also shipped by libstdc++-13-doc, libstdc++-14-doc. Parsed by carta from the page's man source.