STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Macros | Typedefs | Functions | Variables
vector File Reference
#include <xmemory>
#include <stdexcept>

Classes

class  _Vector_const_iterator< _Myvec >
 
class  _Vector_iterator< _Myvec >
 
struct  _Vec_iter_types< _Value_type, _Size_type, _Difference_type, _Pointer, _Const_pointer, _Reference, _Const_reference >
 
struct  _Vec_base_types< _Ty, _Alloc0 >
 
class  _Vector_val< _Val_types >
 
class  _Vector_alloc< _Al_has_storage, _Alloc_types >
 
class  _Vector_alloc< false, _Alloc_types >
 
class  vector< _Ty, _Alloc >
 
class  _Vb_iter_base< _Alloc >
 
class  _Vb_reference< _Alloc >
 
class  _Vb_const_iterator< _Alloc >
 
struct  _Is_checked_helper< _Vb_const_iterator< _Alloc > >
 
class  _Vb_iterator< _Alloc >
 
struct  _Is_checked_helper< _Vb_iterator< _Alloc > >
 
class  _Vb_val< _Alloc >
 
class  vector< _Bool, _Alloc >
 
struct  hash< vector< _Bool, _Alloc > >
 

Macros

#define _VECTOR_
 
#define _VECTOR_ORPHAN_RANGE   (_ITERATOR_DEBUG_LEVEL == 2)
 
#define _VICONT(it)   it._Getcont()
 
#define _VIPTR(it)   (it)._Ptr
 

Typedefs

typedef unsigned int _Vbase
 

Functions

template<class _Myvec >
_Vector_const_iterator< _Myvec >::_Unchecked_type _Unchecked (_Vector_const_iterator< _Myvec > _Iter)
 
template<class _Myvec >
_Vector_const_iterator< _Myvec > & _Rechecked (_Vector_const_iterator< _Myvec > &_Iter, typename _Vector_const_iterator< _Myvec >::_Unchecked_type _Right)
 
template<class _Myvec >
_Vector_const_iterator< _Myvec > operator+ (typename _Vector_const_iterator< _Myvec >::difference_type _Off, _Vector_const_iterator< _Myvec > _Next)
 
template<class _Myvec >
_Vector_iterator< _Myvec >::_Unchecked_type _Unchecked (_Vector_iterator< _Myvec > _Iter)
 
template<class _Myvec >
_Vector_iterator< _Myvec > & _Rechecked (_Vector_iterator< _Myvec > &_Iter, typename _Vector_iterator< _Myvec >::_Unchecked_type _Right)
 
template<class _Myvec >
_Vector_iterator< _Myvec > operator+ (typename _Vector_iterator< _Myvec >::difference_type _Off, _Vector_iterator< _Myvec > _Next)
 
template<class _Ty , class _Alloc >
void swap (vector< _Ty, _Alloc > &_Left, vector< _Ty, _Alloc > &_Right)
 
template<class _Ty , class _Alloc >
bool operator== (const vector< _Ty, _Alloc > &_Left, const vector< _Ty, _Alloc > &_Right)
 
template<class _Ty , class _Alloc >
bool operator!= (const vector< _Ty, _Alloc > &_Left, const vector< _Ty, _Alloc > &_Right)
 
template<class _Ty , class _Alloc >
bool operator< (const vector< _Ty, _Alloc > &_Left, const vector< _Ty, _Alloc > &_Right)
 
template<class _Ty , class _Alloc >
bool operator> (const vector< _Ty, _Alloc > &_Left, const vector< _Ty, _Alloc > &_Right)
 
template<class _Ty , class _Alloc >
bool operator<= (const vector< _Ty, _Alloc > &_Left, const vector< _Ty, _Alloc > &_Right)
 
template<class _Ty , class _Alloc >
bool operator>= (const vector< _Ty, _Alloc > &_Left, const vector< _Ty, _Alloc > &_Right)
 
template<class _Alloc >
void swap (_Vb_reference< _Alloc > _Left, _Vb_reference< _Alloc > _Right)
 
template<class _Alloc >
_Vb_const_iterator< _Alloc > operator+ (typename _Alloc::difference_type _Off, _Vb_const_iterator< _Alloc > _Right)
 
template<class _Alloc >
_Vb_iterator< _Alloc > operator+ (typename _Alloc::difference_type _Off, _Vb_iterator< _Alloc > _Right)
 
template<class _Alloc >
bool operator== (const vector< bool, _Alloc > &_Left, const vector< bool, _Alloc > &_Right)
 
template<class _Alloc >
bool operator!= (const vector< bool, _Alloc > &_Left, const vector< bool, _Alloc > &_Right)
 

Variables

const int _VBITS = 8 * sizeof (_Vbase)
 

Macro Definition Documentation

#define _VECTOR_
#define _VECTOR_ORPHAN_RANGE   (_ITERATOR_DEBUG_LEVEL == 2)
#define _VICONT (   it)    it._Getcont()
#define _VIPTR (   it)    (it)._Ptr

Typedef Documentation

typedef unsigned int _Vbase

Function Documentation

template<class _Myvec >
_Vector_const_iterator<_Myvec>& _Rechecked ( _Vector_const_iterator< _Myvec > &  _Iter,
typename _Vector_const_iterator< _Myvec >::_Unchecked_type  _Right 
)
inline
273  { // convert to checked
274  return (_Iter._Rechecked(_Right));
275  }
_Myiter & _Rechecked(_Unchecked_type _Right)
Definition: vector:53
const _Ty & _Right
Definition: algorithm:4087
template<class _Myvec >
_Vector_iterator<_Myvec>& _Rechecked ( _Vector_iterator< _Myvec > &  _Iter,
typename _Vector_iterator< _Myvec >::_Unchecked_type  _Right 
)
inline
404  { // convert to checked
405  return (_Iter._Rechecked(_Right));
406  }
_Myiter & _Rechecked(_Unchecked_type _Right)
Definition: vector:311
const _Ty & _Right
Definition: algorithm:4087
template<class _Myvec >
_Vector_const_iterator<_Myvec>::_Unchecked_type _Unchecked ( _Vector_const_iterator< _Myvec >  _Iter)
inline
264  { // convert to unchecked
265  return (_Iter._Unchecked());
266  }
_Unchecked_type _Unchecked() const
Definition: vector:59
template<class _Myvec >
_Vector_iterator<_Myvec>::_Unchecked_type _Unchecked ( _Vector_iterator< _Myvec >  _Iter)
inline
395  { // convert to unchecked
396  return (_Iter._Unchecked());
397  }
_Unchecked_type _Unchecked() const
Definition: vector:317
template<class _Ty , class _Alloc >
bool operator!= ( const vector< _Ty, _Alloc > &  _Left,
const vector< _Ty, _Alloc > &  _Right 
)
inline
1807  { // test for vector inequality
1808  return (!(_Left == _Right));
1809  }
template<class _Alloc >
bool operator!= ( const vector< bool, _Alloc > &  _Left,
const vector< bool, _Alloc > &  _Right 
)
inline
3015  { // test for vector inequality
3016  return (!(_Left == _Right));
3017  }
template<class _Myvec >
_Vector_const_iterator<_Myvec> operator+ ( typename _Vector_const_iterator< _Myvec >::difference_type  _Off,
_Vector_const_iterator< _Myvec >  _Next 
)
inline
281  { // add offset to iterator
282  return (_Next += _Off);
283  }
template<class _Myvec >
_Vector_iterator<_Myvec> operator+ ( typename _Vector_iterator< _Myvec >::difference_type  _Off,
_Vector_iterator< _Myvec >  _Next 
)
inline
412  { // add offset to iterator
413  return (_Next += _Off);
414  }
template<class _Alloc >
_Vb_const_iterator<_Alloc> operator+ ( typename _Alloc::difference_type  _Off,
_Vb_const_iterator< _Alloc >  _Right 
)
inline
2194  { // return _Right + integer
2195  return (_Right += _Off);
2196  }
template<class _Alloc >
_Vb_iterator<_Alloc> operator+ ( typename _Alloc::difference_type  _Off,
_Vb_iterator< _Alloc >  _Right 
)
inline
2300  { // return _Right + integer
2301  return (_Right += _Off);
2302  }
template<class _Ty , class _Alloc >
bool operator< ( const vector< _Ty, _Alloc > &  _Left,
const vector< _Ty, _Alloc > &  _Right 
)
inline
1815  { // test if _Left < _Right for vectors
1816  return (lexicographical_compare(_Left.begin(), _Left.end(),
1817  _Right.begin(), _Right.end()));
1818  }
iterator begin() _NOEXCEPT
Definition: vector:1023
iterator end() _NOEXCEPT
Definition: vector:1033
bool lexicographical_compare(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2, _InIt2 _Last2)
Definition: memory:830
template<class _Ty , class _Alloc >
bool operator<= ( const vector< _Ty, _Alloc > &  _Left,
const vector< _Ty, _Alloc > &  _Right 
)
inline
1832  { // test if _Left <= _Right for vectors
1833  return (!(_Right < _Left));
1834  }
template<class _Ty , class _Alloc >
bool operator== ( const vector< _Ty, _Alloc > &  _Left,
const vector< _Ty, _Alloc > &  _Right 
)
inline
1798  { // test for vector equality
1799  return (_Left.size() == _Right.size()
1800  && equal(_Left.begin(), _Left.end(), _Right.begin()));
1801  }
iterator begin() _NOEXCEPT
Definition: vector:1023
size_type size() const _NOEXCEPT
Definition: vector:1146
iterator end() _NOEXCEPT
Definition: vector:1033
bool equal(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2)
Definition: memory:611
template<class _Alloc >
bool operator== ( const vector< bool, _Alloc > &  _Left,
const vector< bool, _Alloc > &  _Right 
)
inline
3006  { // test for vector equality
3007  return (_Left.size() == _Right.size()
3008  && equal(_Left._Myvec.begin(), _Left._Myvec.end(),
3009  _Right._Myvec.begin()));
3010  }
iterator begin() _NOEXCEPT
Definition: vector:1023
size_type size() const _NOEXCEPT
Definition: vector:1146
iterator end() _NOEXCEPT
Definition: vector:1033
bool equal(_InIt1 _First1, _InIt1 _Last1, _InIt2 _First2)
Definition: memory:611
template<class _Ty , class _Alloc >
bool operator> ( const vector< _Ty, _Alloc > &  _Left,
const vector< _Ty, _Alloc > &  _Right 
)
inline
1824  { // test if _Left > _Right for vectors
1825  return (_Right < _Left);
1826  }
template<class _Ty , class _Alloc >
bool operator>= ( const vector< _Ty, _Alloc > &  _Left,
const vector< _Ty, _Alloc > &  _Right 
)
inline
1840  { // test if _Left >= _Right for vectors
1841  return (!(_Left < _Right));
1842  }
template<class _Ty , class _Alloc >
void swap ( vector< _Ty, _Alloc > &  _Left,
vector< _Ty, _Alloc > &  _Right 
)
inline
1790  { // swap _Left and _Right vectors
1791  _Left.swap(_Right);
1792  }
void swap(_Myt &_Right)
Definition: vector:1513
template<class _Alloc >
void swap ( _Vb_reference< _Alloc >  _Left,
_Vb_reference< _Alloc >  _Right 
)
inline
1974  { // swap _Left and _Right vector<bool> elements
1975  bool _Val = _Left; // NOT _STD swap
1976  _Left = _Right;
1977  _Right = _Val;
1978  }
_FwdIt const _Ty _Val
Definition: algorithm:1938
const _Ty & _Right
Definition: algorithm:4087

Variable Documentation

const int _VBITS = 8 * sizeof (_Vbase)