std::_Deque_base< _Tp, _Alloc > Class Template Reference

## Protected Types

enum | { _S_initial_map_size }
typedef __gnu_cxx::__alloc_traits< _Tp_alloc_type > | _Alloc_traits
typedef __gnu_cxx::__alloc_traits< _Map_alloc_type > | _Map_alloc_traits
typedef _Alloc_traits::template rebind< _Ptr >::other | _Map_alloc_type
typedef iterator::_Map_pointer | _Map_pointer
typedef _Alloc_traits::pointer | _Ptr
typedef _Alloc_traits::const_pointer | _Ptr_const
typedef __gnu_cxx::__alloc_traits< _Alloc >::template rebind< _Tp >::other | _Tp_alloc_type
typedef _Alloc | allocator_type
typedef _Deque_iterator< _Tp, const _Tp &, _Ptr_const > | const_iterator
typedef _Deque_iterator< _Tp, _Tp &, _Ptr > | iterator

## Protected Member Functions

| _Deque_base (_Deque_base &&__x)
| _Deque_base (_Deque_base &&__x, const allocator_type &__a)
| _Deque_base (_Deque_base &&__x, const allocator_type &__a, size_t __n)
| _Deque_base (const allocator_type &__a)
| _Deque_base (const allocator_type &__a, size_t __num_elements)
| _Deque_base (size_t __num_elements)
_Map_pointer | _M_allocate_map (size_t __n)
_Ptr | _M_allocate_node ()
void | _M_create_nodes (_Map_pointer __nstart, _Map_pointer __nfinish)
void | _M_deallocate_map (_Map_pointer __p, size_t __n) noexcept
void | _M_deallocate_node (_Ptr __p) noexcept
void | _M_destroy_nodes (_Map_pointer __nstart, _Map_pointer __nfinish) noexcept
_Map_alloc_type | _M_get_map_allocator () const noexcept
const _Tp_alloc_type & | _M_get_Tp_allocator () const noexcept
_Tp_alloc_type & | _M_get_Tp_allocator () noexcept
void | _M_initialize_map (size_t)
allocator_type | get_allocator () const noexcept

## Protected Attributes

_Deque_impl | _M_impl

## Detailed Description

### template<typename _Tp, typename _Alloc>
class std::_Deque_base< _Tp, _Alloc >

Deque base class. This class provides the unified face for deque's allocation. This class's constructor and destructor allocate and deallocate (but do not initialize) storage. This makes exception safety easier.

Nothing in this class ever constructs or destroys an actual Tp element. (Deque handles that itself.) Only/All memory management is performed here.

Definition at line 408 of file stl_deque.h.

## Member Function Documentation

## _M_initialize_map()

template<typename _Tp , typename _Alloc >

void std::_Deque_base< _Tp, _Alloc >::_M_initialize_map | ( | size_t | __num_elements | ) |

protected

Layout storage.

Parameters

  __num_elements | The count of T's for which to allocate space at first.

Returns
  Nothing.

The initial underlying memory layout is a bit complicated...

Definition at line 616 of file stl_deque.h.

References std::max().

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

- stl_deque.h