Scroll to navigation

std::allocator< _Tp >(3cxx) std::allocator< _Tp >(3cxx)

NAME

std::allocator< _Tp > - The standard allocator, as per C++03 [20.4.1].

SYNOPSIS

#include <allocator.h>

Inherits __gnu_cxx::new_allocator< _Tp >.

Public Types


typedef const _Tp * const_pointer
typedef const _Tp & const_reference
typedef ptrdiff_t difference_type
using is_always_equal = true_type
typedef _Tp * pointer
using propagate_on_container_move_assignment = true_type
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 std::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

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

Definition at line 134 of file allocator.h.

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

Definition at line 136 of file allocator.h.

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

Definition at line 129 of file allocator.h.

template<typename _Tp > using std::allocator< _Tp >::is_always_equal = true_type

Definition at line 148 of file allocator.h.

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

Definition at line 133 of file allocator.h.

template<typename _Tp > using std::allocator< _Tp >::propagate_on_container_move_assignment = true_type

Definition at line 146 of file allocator.h.

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

Definition at line 135 of file allocator.h.

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

Definition at line 128 of file allocator.h.

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

Definition at line 127 of file allocator.h.

Constructor & Destructor Documentation

template<typename _Tp > constexpr std::allocator< _Tp >::allocator () [inline], [constexpr], [noexcept]

Definition at line 156 of file allocator.h.

template<typename _Tp > constexpr std::allocator< _Tp >::allocator (const allocator< _Tp > & __a) [inline], [constexpr], [noexcept]

Definition at line 159 of file allocator.h.

template<typename _Tp > template<typename _Tp1 > constexpr std::allocator< _Tp >::allocator (const allocator< _Tp1 > &) [inline], [constexpr], [noexcept]

Definition at line 169 of file allocator.h.

template<typename _Tp > std::allocator< _Tp >::~allocator () [inline], [noexcept]

Definition at line 174 of file allocator.h.

Member Function Documentation

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.

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.

template<typename _Tp > _Tp * __gnu_cxx::new_allocator< _Tp >::allocate (size_type __n, const void * = static_cast<const void*>(0)) [inline], [inherited]

Definition at line 103 of file new_allocator.h.

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.

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.

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.

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 Function Documentation

template<typename _Tp > constexpr bool operator!= (const allocator< _Tp > &, const allocator< _Tp > &) [friend]

Definition at line 209 of file allocator.h.

template<typename _Tp > constexpr bool operator== (const allocator< _Tp > &, const allocator< _Tp > &) [friend]

Definition at line 204 of file allocator.h.

Author

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

Tue Jan 10 2023 libstdc++