Scroll to navigation

std::_Deque_base(3) Library Functions Manual std::_Deque_base(3)

NAME

std::_Deque_base -

SYNOPSIS

Inherited by std::deque< _Tp, _Alloc > [protected].

Public Types


typedef _Alloc allocator_type
typedef _Deque_iterator< _Tp, const _Tp &, const _Tp * > const_iterator
typedef _Deque_iterator< _Tp, _Tp &, _Tp * > iterator

Public Member Functions


_Deque_base (_Deque_base &&__x)
_Deque_base (const allocator_type &__a)
_Deque_base (const allocator_type &__a, size_t __num_elements)
allocator_type get_allocator () const

Protected Types


enum { _S_initial_map_size }
typedef _Alloc::template rebind< _Tp * >::other _Map_alloc_type
typedef _Alloc::template rebind< _Tp >::other _Tp_alloc_type

Protected Member Functions


_Tp ** _M_allocate_map (size_t __n)
_Tp * _M_allocate_node ()
void _M_create_nodes (_Tp **__nstart, _Tp **__nfinish)
void _M_deallocate_map (_Tp **__p, size_t __n)
void _M_deallocate_node (_Tp *__p)
void _M_destroy_nodes (_Tp **__nstart, _Tp **__nfinish)
_Map_alloc_type _M_get_map_allocator () const
const _Tp_alloc_type & _M_get_Tp_allocator () const
_Tp_alloc_type & _M_get_Tp_allocator ()
void _M_initialize_map (size_t)

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 361 of file stl_deque.h.

Member Function Documentation

template<typename _Tp , typename _Alloc > void std::_Deque_base< _Tp, _Alloc >::_M_initialize_map (size_t __num_elements) [inline, 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 493 of file stl_deque.h.

References std::__deque_buf_size(), and std::max().

Referenced by std::deque< _Tp, _Alloc >::_M_range_initialize().

Author

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

19 Jun 2018 libstdc++