__gnu_debug_def::vector< _Tp, _Allocator > Class Template Reference

Inheritance diagram for __gnu_debug_def::vector< _Tp, _Allocator >:

_GLIBCXX_STD::vector< _Tp, _Allocator > __gnu_debug::_Safe_sequence< vector< _Tp, _Allocator > > _GLIBCXX_STD::_Vector_base< _Tp, _Allocator > __gnu_debug::_Safe_sequence_base List of all members.

Public Types

typedef _Base::reference reference
typedef _Base::const_reference const_reference
typedef __gnu_debug::_Safe_iterator<
typename _Base::iterator,
vector
iterator
typedef __gnu_debug::_Safe_iterator<
typename _Base::const_iterator,
vector
const_iterator
typedef _Base::size_type size_type
typedef _Base::difference_type difference_type
typedef _Tp value_type
typedef _Allocator allocator_type
typedef _Allocator::pointer pointer
typedef _Allocator::const_pointer const_pointer
typedef std::reverse_iterator<
iterator
reverse_iterator
typedef std::reverse_iterator<
const_iterator
const_reverse_iterator

Public Member Functions

 vector (const _Allocator &__a=_Allocator())
 vector (size_type __n, const _Tp &__value=_Tp(), const _Allocator &__a=_Allocator())
template<class _InputIterator>  vector (_InputIterator __first, _InputIterator __last, const _Allocator &__a=_Allocator())
 vector (const vector< _Tp, _Allocator > &__x)
 vector (const _Base &__x)
 Construction from a release-mode vector.

 ~vector ()
vector< _Tp, _Allocator > & operator= (const vector< _Tp, _Allocator > &__x)
template<typename _InputIterator> void assign (_InputIterator __first, _InputIterator __last)
 Assigns a range to a vector.

void assign (size_type __n, const _Tp &__u)
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
reverse_iterator rbegin ()
const_reverse_iterator rbegin () const
reverse_iterator rend ()
const_reverse_iterator rend () const
void resize (size_type __sz, _Tp __c=_Tp())
void reserve (size_type __n)
 Attempt to preallocate enough memory for specified number of elements.

reference operator[] (size_type __n)
 Subscript access to the data contained in the vector.

const_reference operator[] (size_type __n) const
 Subscript access to the data contained in the vector.

reference front ()
const_reference front () const
reference back ()
const_reference back () const
void push_back (const _Tp &__x)
void pop_back ()
 Removes last element.

iterator insert (iterator __position, const _Tp &__x)
void insert (iterator __position, size_type __n, const _Tp &__x)
template<class _InputIterator> void insert (iterator __position, _InputIterator __first, _InputIterator __last)
 Inserts a range into the vector.

iterator erase (iterator __position)
 Remove element at given position.

iterator erase (iterator __first, iterator __last)
 Remove a range of elements.

void swap (vector< _Tp, _Allocator > &__x)
void clear ()
_Base_M_base ()
const _Base_M_base () const

Private Types

typedef _GLIBCXX_STD::vector<
_Tp, _Allocator > 
_Base
typedef __gnu_debug::_Safe_sequence<
vector
_Safe_base
typedef _Base::const_iterator _Base_const_iterator
typedef __gnu_debug::_After_nth_from<
_Base_const_iterator
_After_nth

Private Member Functions

bool _M_requires_reallocation (size_type __elements)
void _M_update_guaranteed_capacity ()

Private Attributes

size_type _M_guaranteed_capacity

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
class __gnu_debug_def::vector< _Tp, _Allocator >


Member Typedef Documentation

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_After_nth_from<_Base_const_iterator> __gnu_debug_def::vector< _Tp, _Allocator >::_After_nth [private]
 

Definition at line 51 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::erase(), __gnu_debug_def::vector< _Tp, _Allocator >::insert(), and __gnu_debug_def::vector< _Tp, _Allocator >::resize().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _GLIBCXX_STD::vector<_Tp, _Allocator> __gnu_debug_def::vector< _Tp, _Allocator >::_Base [private]
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 47 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::const_iterator __gnu_debug_def::vector< _Tp, _Allocator >::_Base_const_iterator [private]
 

Definition at line 50 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_sequence<vector> __gnu_debug_def::vector< _Tp, _Allocator >::_Safe_base [private]
 

Definition at line 48 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Allocator __gnu_debug_def::vector< _Tp, _Allocator >::allocator_type
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 66 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_iterator<typename _Base::const_iterator,vector> __gnu_debug_def::vector< _Tp, _Allocator >::const_iterator
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 60 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and __gnu_debug_def::vector< _Tp, _Allocator >::end().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Allocator::const_pointer __gnu_debug_def::vector< _Tp, _Allocator >::const_pointer
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 68 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::const_reference __gnu_debug_def::vector< _Tp, _Allocator >::const_reference
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 55 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef std::reverse_iterator<const_iterator> __gnu_debug_def::vector< _Tp, _Allocator >::const_reverse_iterator
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 70 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::rbegin(), and __gnu_debug_def::vector< _Tp, _Allocator >::rend().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::difference_type __gnu_debug_def::vector< _Tp, _Allocator >::difference_type
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 63 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef __gnu_debug::_Safe_iterator<typename _Base::iterator,vector> __gnu_debug_def::vector< _Tp, _Allocator >::iterator
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 58 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::begin(), __gnu_debug_def::vector< _Tp, _Allocator >::end(), __gnu_debug_def::vector< _Tp, _Allocator >::erase(), and __gnu_debug_def::vector< _Tp, _Allocator >::insert().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Allocator::pointer __gnu_debug_def::vector< _Tp, _Allocator >::pointer
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 67 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::reference __gnu_debug_def::vector< _Tp, _Allocator >::reference
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 54 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef std::reverse_iterator<iterator> __gnu_debug_def::vector< _Tp, _Allocator >::reverse_iterator
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 69 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::rbegin(), and __gnu_debug_def::vector< _Tp, _Allocator >::rend().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Base::size_type __gnu_debug_def::vector< _Tp, _Allocator >::size_type
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 62 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
typedef _Tp __gnu_debug_def::vector< _Tp, _Allocator >::value_type
 

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 65 of file debug/vector.


Constructor & Destructor Documentation

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::vector const _Allocator &  __a = _Allocator()  )  [inline, explicit]
 

Definition at line 73 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::vector size_type  __n,
const _Tp &  __value = _Tp(),
const _Allocator &  __a = _Allocator()
[inline, explicit]
 

Definition at line 76 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
template<class _InputIterator>
__gnu_debug_def::vector< _Tp, _Allocator >::vector _InputIterator  __first,
_InputIterator  __last,
const _Allocator &  __a = _Allocator()
[inline]
 

Definition at line 81 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, and __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::vector const vector< _Tp, _Allocator > &  __x  )  [inline]
 

Definition at line 88 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::vector const _Base __x  )  [inline]
 

Construction from a release-mode vector.

Definition at line 92 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
__gnu_debug_def::vector< _Tp, _Allocator >::~vector  )  [inline]
 

The dtor only erases the elements, and note that if the elements themselves are pointers, the pointed-to memory is not touched in any way. Managing the pointer is the user's responsibilty.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 95 of file debug/vector.


Member Function Documentation

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const _Base& __gnu_debug_def::vector< _Tp, _Allocator >::_M_base  )  const [inline]
 

Definition at line 347 of file debug/vector.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
_Base& __gnu_debug_def::vector< _Tp, _Allocator >::_M_base  )  [inline]
 

Definition at line 344 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::erase(), __gnu_debug_def::vector< _Tp, _Allocator >::insert(), __gnu_debug_def::operator!=(), __gnu_debug_def::operator==(), __gnu_debug_def::operator>(), __gnu_debug_def::operator>=(), __gnu_debug_def::vector< _Tp, _Allocator >::operator[](), and __gnu_debug_def::vector< _Tp, _Allocator >::resize().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
bool __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation size_type  __elements  )  [inline, private]
 

Definition at line 353 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, and _GLIBCXX_STD::vector< _Tp, _Allocator >::capacity().

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::insert(), __gnu_debug_def::vector< _Tp, _Allocator >::push_back(), __gnu_debug_def::vector< _Tp, _Allocator >::reserve(), and __gnu_debug_def::vector< _Tp, _Allocator >::resize().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity  )  [inline, private]
 

Definition at line 363 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, and _GLIBCXX_STD::vector< _Tp, _Allocator >::size().

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::assign(), __gnu_debug_def::vector< _Tp, _Allocator >::insert(), __gnu_debug_def::vector< _Tp, _Allocator >::operator=(), __gnu_debug_def::vector< _Tp, _Allocator >::push_back(), and __gnu_debug_def::vector< _Tp, _Allocator >::vector().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::assign size_type  __n,
const _Tp &  __u
[inline]
 

Definition at line 117 of file debug/vector.

References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
template<typename _InputIterator>
void __gnu_debug_def::vector< _Tp, _Allocator >::assign _InputIterator  __first,
_InputIterator  __last
[inline]
 

Assigns a range to a vector.

Parameters:
first An input iterator.
last An input iterator.
This function fills a vector with copies of the elements in the range [first,last).

Note that the assignment completely changes the vector and that the resulting vector's size is the same as the number of elements assigned. Old data may be lost.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 108 of file debug/vector.

References __glibcxx_check_valid_range, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reference __gnu_debug_def::vector< _Tp, _Allocator >::back  )  const [inline]
 

Returns a read-only (constant) reference to the data at the last element of the vector.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 227 of file debug/vector.

References __glibcxx_check_nonempty.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reference __gnu_debug_def::vector< _Tp, _Allocator >::back  )  [inline]
 

Returns a read/write reference to the data at the last element of the vector.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 220 of file debug/vector.

References __glibcxx_check_nonempty.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_iterator __gnu_debug_def::vector< _Tp, _Allocator >::begin  )  const [inline]
 

Returns a read-only (constant) iterator that points to the first element in the vector. Iteration is done in ordinary element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 132 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::const_iterator.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::begin  )  [inline]
 

Returns a read/write iterator that points to the first element in the vector. Iteration is done in ordinary element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 128 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::iterator.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::erase(), __gnu_debug_def::vector< _Tp, _Allocator >::insert(), __gnu_debug_def::vector< _Tp, _Allocator >::rend(), and __gnu_debug_def::vector< _Tp, _Allocator >::resize().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::clear  )  [inline]
 

Erases all the elements. Note that this function only erases the elements, and that if the elements themselves are pointers, the pointed-to memory is not touched in any way. Managing the pointer is the user's responsibilty.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 336 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, and __gnu_debug::_Safe_sequence_base::_M_invalidate_all().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_iterator __gnu_debug_def::vector< _Tp, _Allocator >::end  )  const [inline]
 

Returns a read-only (constant) iterator that points one past the last element in the vector. Iteration is done in ordinary element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 140 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::const_iterator.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::end  )  [inline]
 

Returns a read/write iterator that points one past the last element in the vector. Iteration is done in ordinary element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 136 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::iterator.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::pop_back(), and __gnu_debug_def::vector< _Tp, _Allocator >::rbegin().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::erase iterator  __first,
iterator  __last
[inline]
 

Remove a range of elements.

Parameters:
first Iterator pointing to the first element to be erased.
last Iterator pointing to one past the last element to be erased.
Returns:
An iterator pointing to the element pointed to by last prior to erasing (or end()).
This function will erase the elements in the range [first,last) and shorten the vector accordingly.

Note This operation could be expensive and if it is frequently used the user should consider using std::list. The user is also cautioned that this function only erases the elements, and that if the elements themselves are pointers, the pointed-to memory is not touched in any way. Managing the pointer is the user's responsibilty.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 314 of file debug/vector.

References __glibcxx_check_erase_range, __gnu_debug_def::vector< _Tp, _Allocator >::_After_nth, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence< vector< _Tp, _Allocator > >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and __gnu_debug_def::vector< _Tp, _Allocator >::iterator.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::erase iterator  __position  )  [inline]
 

Remove element at given position.

Parameters:
position Iterator pointing to element to be erased.
Returns:
An iterator pointing to the next element (or end()).
This function will erase the element at the given position and thus shorten the vector by one.

Note This operation could be expensive and if it is frequently used the user should consider using std::list. The user is also cautioned that this function only erases the element, and that if the element is itself a pointer, the pointed-to memory is not touched in any way. Managing the pointer is the user's responsibilty.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 304 of file debug/vector.

References __glibcxx_check_erase, __gnu_debug_def::vector< _Tp, _Allocator >::_After_nth, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence< vector< _Tp, _Allocator > >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and __gnu_debug_def::vector< _Tp, _Allocator >::iterator.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reference __gnu_debug_def::vector< _Tp, _Allocator >::front  )  const [inline]
 

Returns a read-only (constant) reference to the data at the first element of the vector.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 213 of file debug/vector.

References __glibcxx_check_nonempty.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reference __gnu_debug_def::vector< _Tp, _Allocator >::front  )  [inline]
 

Returns a read/write reference to the data at the first element of the vector.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 206 of file debug/vector.

References __glibcxx_check_nonempty.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
template<class _InputIterator>
void __gnu_debug_def::vector< _Tp, _Allocator >::insert iterator  __position,
_InputIterator  __first,
_InputIterator  __last
[inline]
 

Inserts a range into the vector.

Parameters:
position An iterator into the vector.
first An input iterator.
last An input iterator.
This function will insert copies of the data in the range [first,last) into the vector before the location specified by pos.

Note that this kind of operation could be expensive for a vector and if it is frequently used the user should consider using std::list.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 284 of file debug/vector.

References __glibcxx_check_insert_range, __gnu_debug_def::vector< _Tp, _Allocator >::_After_nth, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< vector< _Tp, _Allocator > >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), and __gnu_debug_def::vector< _Tp, _Allocator >::begin().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::insert iterator  __position,
size_type  __n,
const _Tp &  __x
[inline]
 

Definition at line 269 of file debug/vector.

References __glibcxx_check_insert, __gnu_debug_def::vector< _Tp, _Allocator >::_After_nth, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< vector< _Tp, _Allocator > >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), and __gnu_debug_def::vector< _Tp, _Allocator >::begin().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
iterator __gnu_debug_def::vector< _Tp, _Allocator >::insert iterator  __position,
const _Tp &  __x
[inline]
 

Definition at line 254 of file debug/vector.

References __glibcxx_check_insert, __gnu_debug_def::vector< _Tp, _Allocator >::_After_nth, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< vector< _Tp, _Allocator > >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and __gnu_debug_def::vector< _Tp, _Allocator >::iterator.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
vector<_Tp,_Allocator>& __gnu_debug_def::vector< _Tp, _Allocator >::operator= const vector< _Tp, _Allocator > &  __x  )  [inline]
 

Definition at line 98 of file debug/vector.

References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reference __gnu_debug_def::vector< _Tp, _Allocator >::operator[] size_type  __n  )  const [inline]
 

Subscript access to the data contained in the vector.

Parameters:
n The index of the element for which data should be accessed.
Returns:
Read-only (constant) reference to data.
This operator allows for easy, array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined. (For checked lookups see at().)

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 197 of file debug/vector.

References __glibcxx_check_subscript, and __gnu_debug_def::vector< _Tp, _Allocator >::_M_base().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reference __gnu_debug_def::vector< _Tp, _Allocator >::operator[] size_type  __n  )  [inline]
 

Subscript access to the data contained in the vector.

Parameters:
n The index of the element for which data should be accessed.
Returns:
Read/write reference to data.
This operator allows for easy, array-style, data access. Note that data access with this operator is unchecked and out_of_range lookups are not defined. (For checked lookups see at().)

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 190 of file debug/vector.

References __glibcxx_check_subscript, and __gnu_debug_def::vector< _Tp, _Allocator >::_M_base().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::pop_back  )  [inline]
 

Removes last element.

This is a typical stack operation. It shrinks the vector by one.

Note that no data is returned, and if the last element's data is needed, it should be retrieved before pop_back() is called.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 245 of file debug/vector.

References __glibcxx_check_nonempty, and __gnu_debug_def::vector< _Tp, _Allocator >::end().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::push_back const _Tp &  __x  )  [inline]
 

Definition at line 235 of file debug/vector.

References __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), and __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reverse_iterator __gnu_debug_def::vector< _Tp, _Allocator >::rbegin  )  const [inline]
 

Returns a read-only (constant) reverse iterator that points to the last element in the vector. Iteration is done in reverse element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 148 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::const_reverse_iterator, and __gnu_debug_def::vector< _Tp, _Allocator >::end().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reverse_iterator __gnu_debug_def::vector< _Tp, _Allocator >::rbegin  )  [inline]
 

Returns a read/write reverse iterator that points to the last element in the vector. Iteration is done in reverse element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 144 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::end(), and __gnu_debug_def::vector< _Tp, _Allocator >::reverse_iterator.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
const_reverse_iterator __gnu_debug_def::vector< _Tp, _Allocator >::rend  )  const [inline]
 

Returns a read-only (constant) reverse iterator that points to one before the first element in the vector. Iteration is done in reverse element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 156 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and __gnu_debug_def::vector< _Tp, _Allocator >::const_reverse_iterator.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
reverse_iterator __gnu_debug_def::vector< _Tp, _Allocator >::rend  )  [inline]
 

Returns a read/write reverse iterator that points to one before the first element in the vector. Iteration is done in reverse element order.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 152 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and __gnu_debug_def::vector< _Tp, _Allocator >::reverse_iterator.

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::reserve size_type  __n  )  [inline]
 

Attempt to preallocate enough memory for specified number of elements.

Parameters:
n Number of elements required.
Exceptions:
std::length_error If n exceeds max_size().
This function attempts to reserve enough memory for the vector to hold the specified number of elements. If the number requested is more than max_size(), length_error is thrown.

The advantage of this function is that if optimal code is a necessity and the user can determine the number of elements that will be required, the user can reserve the memory in advance, and thus prevent a possible reallocation of memory and copying of vector data.

Reimplemented from _GLIBCXX_STD::vector< _Tp, _Allocator >.

Definition at line 178 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), and __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::resize size_type  __sz,
_Tp  __c = _Tp()
[inline]
 

Definition at line 164 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_After_nth, __gnu_debug_def::vector< _Tp, _Allocator >::_M_base(), __gnu_debug::_Safe_sequence_base::_M_invalidate_all(), __gnu_debug::_Safe_sequence< vector< _Tp, _Allocator > >::_M_invalidate_if(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::begin(), and _GLIBCXX_STD::vector< _Tp, _Allocator >::size().

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
void __gnu_debug_def::vector< _Tp, _Allocator >::swap vector< _Tp, _Allocator > &  __x  )  [inline]
 

Definition at line 328 of file debug/vector.

References __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity, __gnu_debug::_Safe_sequence_base::_M_swap(), and std::swap().

Referenced by __gnu_debug_def::swap().


Member Data Documentation

template<typename _Tp, typename _Allocator = std::allocator<_Tp>>
size_type __gnu_debug_def::vector< _Tp, _Allocator >::_M_guaranteed_capacity [private]
 

Definition at line 350 of file debug/vector.

Referenced by __gnu_debug_def::vector< _Tp, _Allocator >::_M_requires_reallocation(), __gnu_debug_def::vector< _Tp, _Allocator >::_M_update_guaranteed_capacity(), __gnu_debug_def::vector< _Tp, _Allocator >::clear(), __gnu_debug_def::vector< _Tp, _Allocator >::reserve(), __gnu_debug_def::vector< _Tp, _Allocator >::swap(), and __gnu_debug_def::vector< _Tp, _Allocator >::vector().


The documentation for this class was generated from the following file:
Generated on Tue Jan 30 17:32:06 2007 for GNU C++ STL by doxygen 1.3.6