Loading...
Searching...
No Matches
mdds::mtv::delayed_delete_vector< T, Allocator > Class Template Reference

`#include <delayed_delete_vector.hpp>`

## Public Types

typedef store_type::value_type | value_type
typedef store_type::size_type | size_type
typedef store_type::difference_type | difference_type
typedef store_type::reference | reference
typedef store_type::const_reference | const_reference
typedef store_type::pointer | pointer
typedef store_type::const_pointer | const_pointer
typedef store_type::iterator | iterator
typedef store_type::reverse_iterator | reverse_iterator
typedef store_type::const_iterator | const_iterator
typedef store_type::const_reverse_iterator | const_reverse_iterator

## Public Member Functions

| delayed_delete_vector (size_t n, const T &val)
| delayed_delete_vector (size_t n)
template<typename InputIt>
| delayed_delete_vector (InputIt first, InputIt last)
iterator | begin () noexcept
iterator | end () noexcept
const_iterator | begin () const noexcept
const_iterator | end () const noexcept
reverse_iterator | rbegin () noexcept
const_reverse_iterator | rbegin () const noexcept
reverse_iterator | rend () noexcept
const_reverse_iterator | rend () const noexcept
reference | operator[] (size_type pos)
const_reference | operator[] (size_type pos) const
reference | at (size_type pos)
const_reference | at (size_type pos) const
void | push_back (const T &value)
void | push_back (T &&value)
void | swap (delayed_delete_vector &other) noexcept(std::is_nothrow_swappable_v< store_type >)
template<typename... Args>
void | emplace_back (Args &&... args)
iterator | insert (iterator pos, const T &value)
iterator | insert (const_iterator pos, T &&value)
template<typename InputIt>
void | insert (iterator pos, InputIt first, InputIt last)
void | resize (size_type count)
iterator | erase (iterator pos)
iterator | erase (iterator first, iterator last)
size_type | capacity () const noexcept
void | shrink_to_fit ()
void | reserve (size_type new_cap)
size_type | size () const
template<typename InputIt>
void | assign (InputIt first, InputIt last)
T * | data ()
const T * | data () const

## Detailed Description

template<typename T, typename Allocator = std::allocator<T>>
class mdds::mtv::delayed_delete_vector< T, Allocator >

Vector that delays deleting from the front of the vector, which avoids O(n^2) memory move operations when code needs to delete items from one element block and add to another element block.