STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Public Attributes | List of all members
_Array_const_iterator< _Ty, _Size > Class Template Reference
Inheritance diagram for _Array_const_iterator< _Ty, _Size >:
_Iterator012< random_access_iterator_tag, _Ty, ptrdiff_t, const _Ty *, const _Ty &, _Iterator_base > _Iterator_base0 _Array_iterator< _Ty, _Size >

Public Types

enum  { _EEN_SIZE = _Size }
 
enum  { _EEN_IDL }
 
typedef _Array_const_iterator< _Ty, _Size_Myiter
 
typedef random_access_iterator_tag iterator_category
 
typedef _Ty value_type
 
typedef size_t size_type
 
typedef ptrdiff_t difference_type
 
typedef const _Ty * pointer
 
typedef const _Ty & reference
 
typedef pointer _Unchecked_type
 
- Public Types inherited from _Iterator012< random_access_iterator_tag, _Ty, ptrdiff_t, const _Ty *, const _Ty &, _Iterator_base >
typedef random_access_iterator_tag iterator_category
 
typedef _Ty value_type
 
typedef ptrdiff_t difference_type
 
typedef ptrdiff_t distance_type
 
typedef const _Ty * pointer
 
typedef const _Ty & reference
 

Public Member Functions

 _Array_const_iterator ()
 
 _Array_const_iterator (pointer _Parg, size_t _Off=0)
 
_Myiter_Rechecked (_Unchecked_type _Right)
 
_Unchecked_type _Unchecked () const
 
reference operator* () const
 
pointer operator-> () const
 
_Myiteroperator++ ()
 
_Myiter operator++ (int)
 
_Myiteroperator-- ()
 
_Myiter operator-- (int)
 
_Myiteroperator+= (difference_type _Off)
 
_Myiter operator+ (difference_type _Off) const
 
_Myiteroperator-= (difference_type _Off)
 
_Myiter operator- (difference_type _Off) const
 
difference_type operator- (const _Myiter &_Right) const
 
reference operator[] (difference_type _Off) const
 
bool operator== (const _Myiter &_Right) const
 
bool operator!= (const _Myiter &_Right) const
 
bool operator< (const _Myiter &_Right) const
 
bool operator> (const _Myiter &_Right) const
 
bool operator<= (const _Myiter &_Right) const
 
bool operator>= (const _Myiter &_Right) const
 
- Public Member Functions inherited from _Iterator_base0
void _Adopt (const void *)
 
const _Container_base0_Getcont () const
 

Public Attributes

pointer _Ptr
 

Member Typedef Documentation

template<class _Ty, size_t _Size>
typedef _Array_const_iterator<_Ty, _Size> _Array_const_iterator< _Ty, _Size >::_Myiter
template<class _Ty, size_t _Size>
typedef pointer _Array_const_iterator< _Ty, _Size >::_Unchecked_type
template<class _Ty, size_t _Size>
typedef ptrdiff_t _Array_const_iterator< _Ty, _Size >::difference_type
template<class _Ty, size_t _Size>
typedef random_access_iterator_tag _Array_const_iterator< _Ty, _Size >::iterator_category
template<class _Ty, size_t _Size>
typedef const _Ty* _Array_const_iterator< _Ty, _Size >::pointer
template<class _Ty, size_t _Size>
typedef const _Ty& _Array_const_iterator< _Ty, _Size >::reference
template<class _Ty, size_t _Size>
typedef size_t _Array_const_iterator< _Ty, _Size >::size_type
template<class _Ty, size_t _Size>
typedef _Ty _Array_const_iterator< _Ty, _Size >::value_type

Member Enumeration Documentation

template<class _Ty, size_t _Size>
anonymous enum
Enumerator
_EEN_SIZE 
1323 {_EEN_SIZE = _Size}; // helper for expression evaluator
Definition: xutility:1323
_Check_return_ _In_ long _Size
Definition: io.h:325
template<class _Ty, size_t _Size>
anonymous enum
Enumerator
_EEN_IDL 
1324  {_EEN_IDL =
1325  _ITERATOR_DEBUG_LEVEL}; // helper for expression evaluator
Definition: xutility:1324
#define _ITERATOR_DEBUG_LEVEL
Definition: yvals.h:194

Constructor & Destructor Documentation

template<class _Ty, size_t _Size>
_Array_const_iterator< _Ty, _Size >::_Array_const_iterator ( )
inline
1329  { // construct with null pointer
1330  _Ptr = 0;
1331  }
pointer _Ptr
Definition: xutility:1450
template<class _Ty, size_t _Size>
_Array_const_iterator< _Ty, _Size >::_Array_const_iterator ( pointer  _Parg,
size_t  _Off = 0 
)
inlineexplicit
1334  { // construct with pointer and offset
1335  _Ptr = _Parg + _Off;
1336  }
pointer _Ptr
Definition: xutility:1450

Member Function Documentation

template<class _Ty, size_t _Size>
_Myiter& _Array_const_iterator< _Ty, _Size >::_Rechecked ( _Unchecked_type  _Right)
inline
1341  { // reset from unchecked iterator
1342  _Ptr = _Right;
1343  return (*this);
1344  }
pointer _Ptr
Definition: xutility:1450
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty, size_t _Size>
_Unchecked_type _Array_const_iterator< _Ty, _Size >::_Unchecked ( ) const
inline
1347  { // make an unchecked iterator
1348  return (_Ptr);
1349  }
pointer _Ptr
Definition: xutility:1450
template<class _Ty, size_t _Size>
bool _Array_const_iterator< _Ty, _Size >::operator!= ( const _Myiter _Right) const
inline
1426  { // test for iterator inequality
1427  return (!(*this == _Right));
1428  }
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty, size_t _Size>
reference _Array_const_iterator< _Ty, _Size >::operator* ( ) const
inline
1352  { // return designated object
1353  return (*_Ptr);
1354  }
pointer _Ptr
Definition: xutility:1450
template<class _Ty, size_t _Size>
_Myiter _Array_const_iterator< _Ty, _Size >::operator+ ( difference_type  _Off) const
inline
1394  { // return this + integer
1395  _Myiter _Tmp = *this;
1396  return (_Tmp += _Off);
1397  }
_Array_const_iterator< _Ty, _Size > _Myiter
Definition: xutility:1315
template<class _Ty, size_t _Size>
_Myiter& _Array_const_iterator< _Ty, _Size >::operator++ ( )
inline
1362  { // preincrement
1363  ++_Ptr;
1364  return (*this);
1365  }
pointer _Ptr
Definition: xutility:1450
template<class _Ty, size_t _Size>
_Myiter _Array_const_iterator< _Ty, _Size >::operator++ ( int  )
inline
1368  { // postincrement
1369  _Myiter _Tmp = *this;
1370  ++*this;
1371  return (_Tmp);
1372  }
_Array_const_iterator< _Ty, _Size > _Myiter
Definition: xutility:1315
template<class _Ty, size_t _Size>
_Myiter& _Array_const_iterator< _Ty, _Size >::operator+= ( difference_type  _Off)
inline
1388  { // increment by integer
1389  _Ptr += _Off;
1390  return (*this);
1391  }
pointer _Ptr
Definition: xutility:1450
template<class _Ty, size_t _Size>
_Myiter _Array_const_iterator< _Ty, _Size >::operator- ( difference_type  _Off) const
inline
1405  { // return this - integer
1406  _Myiter _Tmp = *this;
1407  return (_Tmp -= _Off);
1408  }
_Array_const_iterator< _Ty, _Size > _Myiter
Definition: xutility:1315
template<class _Ty, size_t _Size>
difference_type _Array_const_iterator< _Ty, _Size >::operator- ( const _Myiter _Right) const
inline
1411  { // return difference of iterators
1412  return (_Ptr - _Right._Ptr);
1413  }
pointer _Ptr
Definition: xutility:1450
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty, size_t _Size>
_Myiter& _Array_const_iterator< _Ty, _Size >::operator-- ( )
inline
1375  { // predecrement
1376  --_Ptr;
1377  return (*this);
1378  }
pointer _Ptr
Definition: xutility:1450
template<class _Ty, size_t _Size>
_Myiter _Array_const_iterator< _Ty, _Size >::operator-- ( int  )
inline
1381  { // postdecrement
1382  _Myiter _Tmp = *this;
1383  --*this;
1384  return (_Tmp);
1385  }
_Array_const_iterator< _Ty, _Size > _Myiter
Definition: xutility:1315
template<class _Ty, size_t _Size>
_Myiter& _Array_const_iterator< _Ty, _Size >::operator-= ( difference_type  _Off)
inline
1400  { // decrement by integer
1401  return (*this += -_Off);
1402  }
template<class _Ty, size_t _Size>
pointer _Array_const_iterator< _Ty, _Size >::operator-> ( ) const
inline
1357  { // return pointer to class object
1358  return (_STD pointer_traits<pointer>::pointer_to(**this));
1359  }
Definition: xmemory0:198
template<class _Ty, size_t _Size>
bool _Array_const_iterator< _Ty, _Size >::operator< ( const _Myiter _Right) const
inline
1431  { // test if this < _Right
1432  return (_Ptr < _Right._Ptr);
1433  }
pointer _Ptr
Definition: xutility:1450
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty, size_t _Size>
bool _Array_const_iterator< _Ty, _Size >::operator<= ( const _Myiter _Right) const
inline
1441  { // test if this <= _Right
1442  return (!(_Right < *this));
1443  }
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty, size_t _Size>
bool _Array_const_iterator< _Ty, _Size >::operator== ( const _Myiter _Right) const
inline
1421  { // test for iterator equality
1422  return (_Ptr == _Right._Ptr);
1423  }
pointer _Ptr
Definition: xutility:1450
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty, size_t _Size>
bool _Array_const_iterator< _Ty, _Size >::operator> ( const _Myiter _Right) const
inline
1436  { // test if this > _Right
1437  return (_Right < *this);
1438  }
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty, size_t _Size>
bool _Array_const_iterator< _Ty, _Size >::operator>= ( const _Myiter _Right) const
inline
1446  { // test if this >= _Right
1447  return (!(*this < _Right));
1448  }
const _Ty & _Right
Definition: algorithm:4087
template<class _Ty, size_t _Size>
reference _Array_const_iterator< _Ty, _Size >::operator[] ( difference_type  _Off) const
inline
1416  { // subscript
1417  return (*(*this + _Off));
1418  }

Member Data Documentation

template<class _Ty, size_t _Size>
pointer _Array_const_iterator< _Ty, _Size >::_Ptr

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