libstdc++
std::allocator< typename > Class Template Reference

#include <memory>

Inheritance diagram for std::allocator< typename >:
[legend]

Public Types

typedef ptrdiff_t difference_type
 
using is_always_equal
 
using propagate_on_container_move_assignment
 
typedef size_t size_type
 
typedef _Tp value_type
 

Public Member Functions

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

Friends

constexpr bool operator== (const allocator &, const allocator &) noexcept
 

Related Symbols

(Note that these are not member symbols.)

template<typename _T1 , typename _T2 >
constexpr bool operator== (const allocator< _T1 > &, const allocator< _T2 > &) noexcept
 

Detailed Description

template<typename>
class std::allocator< typename >

The standard allocator, as per C++03 [20.4.1].

See https://gcc.gnu.org/onlinedocs/libstdc++/manual/memory.html#std.util.memory.allocator for further details.

Template Parameters
_TpType of allocated object.

Definition at line 65 of file memoryfwd.h.

Member Typedef Documentation

◆ difference_type

template<typename >
ptrdiff_t std::allocator< typename >::difference_type

Definition at line 133 of file allocator.h.

◆ is_always_equal

template<typename >
using std::allocator< typename >::is_always_equal

Definition at line 152 of file allocator.h.

◆ propagate_on_container_move_assignment

template<typename >
using std::allocator< typename >::propagate_on_container_move_assignment

Definition at line 150 of file allocator.h.

◆ size_type

template<typename >
size_t std::allocator< typename >::size_type

Definition at line 132 of file allocator.h.

◆ value_type

template<typename >
_Tp std::allocator< typename >::value_type

Definition at line 131 of file allocator.h.

Constructor & Destructor Documentation

◆ allocator() [1/3]

template<typename >
std::allocator< typename >::allocator ( )
inlineconstexprnoexcept

Definition at line 159 of file allocator.h.

◆ allocator() [2/3]

template<typename >
std::allocator< typename >::allocator ( const allocator< typename > & __a)
inlineconstexprnoexcept

Definition at line 163 of file allocator.h.

◆ allocator() [3/3]

template<typename >
template<typename _Tp1 >
std::allocator< typename >::allocator ( const allocator< _Tp1 > & )
inlineconstexprnoexcept

Definition at line 174 of file allocator.h.

◆ ~allocator()

template<typename >
std::allocator< typename >::~allocator ( )
inlineconstexprnoexcept

Definition at line 180 of file allocator.h.

Member Function Documentation

◆ allocate() [1/2]

template<typename _Tp >
_Tp * std::__new_allocator< _Tp >::allocate ( size_type __n,
const void * = static_cast<const void*>(0) )
inlinenodiscardinherited

Definition at line 126 of file bits/new_allocator.h.

◆ allocate() [2/2]

template<typename >
_Tp * std::allocator< typename >::allocate ( size_t __n)
inlinenodiscardconstexpr

Definition at line 185 of file allocator.h.

◆ deallocate()

template<typename >
void std::allocator< typename >::deallocate ( _Tp * __p,
size_t __n )
inlineconstexpr

Definition at line 199 of file allocator.h.

Friends And Related Symbol Documentation

◆ operator==

template<typename >
bool operator== ( const allocator< typename > & ,
const allocator< typename > &  )
friend

Definition at line 212 of file allocator.h.


The documentation for this class was generated from the following files: