__gnu_cxx::allocator< _Tp > Class Template Reference

`#include <allocator.h>`

Inheritance diagram for __gnu_cxx::allocator< _Tp >:
[legend]

## Public Types

typedef const _Tp * | const_pointer
typedef const _Tp & | const_reference
typedef ptrdiff_t | difference_type
using | is_always_equal
typedef _Tp * | pointer
using | propagate_on_container_move_assignment
typedef _Tp & | reference
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
const_pointer | address (const_reference __x) const noexcept
pointer | address (reference __x) const noexcept
_Tp * | allocate (size_type __n, const void *=static_cast< const void * >(0))
template<typename _Up, typename... _Args>
void | construct (_Up *__p, _Args &&... __args) noexcept(std::is_nothrow_constructible< _Up, _Args... >::value)
void | deallocate (_Tp *__p, size_type __t)
template<typename _Up>
void | destroy (_Up *__p) noexcept(std::is_nothrow_destructible< _Up >::value)
size_type | max_size () const noexcept
allocator & | operator= (const allocator &)=default

## Friends

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

## Detailed Description

template<typename _Tp>
class __gnu_cxx::allocator< _Tp >

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

  _Tp | Type of allocated object.

Definition at line 124 of file allocator.h.

## Member Typedef Documentation

## const_pointer

template<typename _Tp>

typedef const _Tp* std::allocator< _Tp >::const_pointer

Definition at line 134 of file allocator.h.

## const_reference

template<typename _Tp>

typedef const _Tp& std::allocator< _Tp >::const_reference

Definition at line 136 of file allocator.h.

## difference_type

template<typename _Tp>

typedef ptrdiff_t std::allocator< _Tp >::difference_type

Definition at line 129 of file allocator.h.

## is_always_equal

template<typename _Tp>

using std::allocator< _Tp >::is_always_equal

Definition at line 148 of file allocator.h.

## pointer

template<typename _Tp>

typedef _Tp* std::allocator< _Tp >::pointer

Definition at line 133 of file allocator.h.

## propagate_on_container_move_assignment

template<typename _Tp>

using std::allocator< _Tp >::propagate_on_container_move_assignment

Definition at line 146 of file allocator.h.

## reference

template<typename _Tp>

typedef _Tp& std::allocator< _Tp >::reference

Definition at line 135 of file allocator.h.

## size_type

template<typename _Tp>

typedef size_t std::allocator< _Tp >::size_type

Definition at line 128 of file allocator.h.

## value_type

template<typename _Tp>

typedef _Tp std::allocator< _Tp >::value_type

Definition at line 127 of file allocator.h.

## Constructor & Destructor Documentation

## allocator() [1/3]

template<typename _Tp>

std::allocator< _Tp >::allocator | ( |  | ) |

inline constexpr noexcept

Definition at line 154 of file allocator.h.

## allocator() [2/3]

template<typename _Tp>

std::allocator< _Tp >::allocator | ( | const allocator< _Tp > & | __a | ) |

inline constexpr noexcept

Definition at line 157 of file allocator.h.

## allocator() [3/3]

template<typename _Tp>
template<typename _Tp1>

std::allocator< _Tp >::allocator | ( | const allocator< _Tp1 > & |  | ) |

inline constexpr noexcept

Definition at line 167 of file allocator.h.

## ~allocator()

template<typename _Tp>

std::allocator< _Tp >::~allocator | ( |  | ) |

inline noexcept

Definition at line 172 of file allocator.h.

## Member Function Documentation

## address() [1/2]

template<typename _Tp>

const_pointer __gnu_cxx::new_allocator< _Tp >::address | ( | const_reference | __x | ) | const

inline noexcept inherited

Definition at line 96 of file new_allocator.h.

## address() [2/2]

template<typename _Tp>

pointer __gnu_cxx::new_allocator< _Tp >::address | ( | reference | __x | ) | const

inline noexcept inherited

Definition at line 92 of file new_allocator.h.

## allocate()

template<typename _Tp>

_Tp * __gnu_cxx::new_allocator< _Tp >::allocate | ( | size_type | __n,
|  | const void * | = static_cast<const void*>(0) )

inline nodiscard inherited

Definition at line 103 of file new_allocator.h.

## construct()

template<typename _Tp>
template<typename _Up, typename... _Args>

void __gnu_cxx::new_allocator< _Tp >::construct | ( | _Up * | __p,
|  | _Args &&... | __args )

inline noexcept inherited

Definition at line 160 of file new_allocator.h.

## deallocate()

template<typename _Tp>

void __gnu_cxx::new_allocator< _Tp >::deallocate | ( | _Tp * | __p,
|  | size_type | __t )

inline inherited

Definition at line 132 of file new_allocator.h.

## destroy()

template<typename _Tp>
template<typename _Up>

void __gnu_cxx::new_allocator< _Tp >::destroy | ( | _Up * | __p | ) |

inline noexcept inherited

Definition at line 166 of file new_allocator.h.

## max_size()

template<typename _Tp>

size_type __gnu_cxx::new_allocator< _Tp >::max_size | ( |  | ) | const

inline noexcept inherited

Definition at line 154 of file new_allocator.h.

## Friends And Related Symbol Documentation

## operator!=

template<typename _Tp>

bool operator!= | ( | const allocator< _Tp > & | ,
|  | const allocator< _Tp > & | )

friend

Definition at line 207 of file allocator.h.

## operator==

template<typename _Tp>

bool operator== | ( | const allocator< _Tp > & | ,
|  | const allocator< _Tp > & | )

friend

Definition at line 202 of file allocator.h.

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

- allocator.h