#include <container_classes.h>
Inherited by const_pntr< T, lgBC >, and pntr< T, lgBC >.
Public Types | |
| typedef random_access_iterator_tag | iterator_category | 
| typedef T | value_type | 
| typedef T & | reference | 
| typedef const T & | const_reference | 
| typedef T * | pointer | 
| typedef const T * | const_pointer | 
| typedef size_t | size_type | 
| typedef ptrdiff_t | difference_type | 
Public Member Functions | |
| basic_pntr (T *p0, T *p1, T *p2) | |
| basic_pntr (T *p0) | |
| basic_pntr () | |
| basic_pntr (const basic_pntr &t) | |
| basic_pntr & | operator++ () | 
| basic_pntr & | operator-- () | 
| basic_pntr & | operator+= (const ptrdiff_t n) | 
| basic_pntr & | operator-= (const ptrdiff_t n) | 
| T & | operator* () const | 
| T * | operator-> () const | 
| T & | operator[] (const ptrdiff_t n) const | 
| bool | operator== (const basic_pntr &t) const | 
| bool | operator!= (const basic_pntr &t) const | 
| bool | operator< (const basic_pntr &t) const | 
| bool | operator<= (const basic_pntr &t) const | 
| bool | operator> (const basic_pntr &t) const | 
| bool | operator>= (const basic_pntr &t) const | 
Protected Member Functions | |
| ~basic_pntr () | |
Private Member Functions | |
| T * | p_index_checked (const ptrdiff_t n) const | 
| void | p_set_vals (T *p0, T *p1, T *p2) | 
Private Attributes | |
| T * | p_p [p_nd] | 
Static Private Attributes | |
| static const int | p_nd = lgBC ? 3 : 1 | 
basic_pntr - base class for generalization of normal pointers that enables bounds checking it comes with the full set of operators that you would expect for a random access pointer
Definition at line 35 of file container_classes.h.
| typedef const T* basic_pntr< T, lgBC >::const_pointer | 
Definition at line 73 of file container_classes.h.
| typedef const T& basic_pntr< T, lgBC >::const_reference | 
Definition at line 71 of file container_classes.h.
| typedef ptrdiff_t basic_pntr< T, lgBC >::difference_type | 
Definition at line 75 of file container_classes.h.
| typedef random_access_iterator_tag basic_pntr< T, lgBC >::iterator_category | 
Definition at line 68 of file container_classes.h.
| typedef T* basic_pntr< T, lgBC >::pointer | 
Definition at line 72 of file container_classes.h.
| typedef T& basic_pntr< T, lgBC >::reference | 
Definition at line 70 of file container_classes.h.
| typedef size_t basic_pntr< T, lgBC >::size_type | 
Definition at line 74 of file container_classes.h.
| typedef T basic_pntr< T, lgBC >::value_type | 
Definition at line 69 of file container_classes.h.
| basic_pntr< T, lgBC >::basic_pntr | ( | T * | p0, | |
| T * | p1, | |||
| T * | p2 | |||
| ) |  [inline] | 
        
Definition at line 78 of file container_classes.h.
References basic_pntr< T, lgBC >::p_set_vals().
| basic_pntr< T, lgBC >::basic_pntr | ( | T * | p0 | ) |  [inline] | 
        
Definition at line 82 of file container_classes.h.
References basic_pntr< T, lgBC >::p_set_vals().
| basic_pntr< T, lgBC >::basic_pntr | ( | ) |  [inline] | 
        
Definition at line 86 of file container_classes.h.
References basic_pntr< T, lgBC >::p_set_vals().
| basic_pntr< T, lgBC >::basic_pntr | ( | const basic_pntr< T, lgBC > & | t | ) |  [inline] | 
        
Definition at line 90 of file container_classes.h.
| basic_pntr< T, lgBC >::~basic_pntr | ( | ) |  [inline, protected] | 
        
Definition at line 96 of file container_classes.h.
| bool basic_pntr< T, lgBC >::operator!= | ( | const basic_pntr< T, lgBC > & | t | ) |  const [inline] | 
        
Definition at line 131 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| T& basic_pntr< T, lgBC >::operator* | ( | ) |  const [inline] | 
        
Reimplemented in const_pntr< T, lgBC >.
Definition at line 117 of file container_classes.h.
References basic_pntr< T, lgBC >::p_index_checked().
| basic_pntr& basic_pntr< T, lgBC >::operator++ | ( | ) |  [inline] | 
        
Reimplemented in pntr< T, lgBC >, and const_pntr< T, lgBC >.
Definition at line 99 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| basic_pntr& basic_pntr< T, lgBC >::operator+= | ( | const ptrdiff_t | n | ) |  [inline] | 
        
Reimplemented in const_pntr< T, lgBC >.
Definition at line 114 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| basic_pntr& basic_pntr< T, lgBC >::operator-- | ( | ) |  [inline] | 
        
Reimplemented in pntr< T, lgBC >, and const_pntr< T, lgBC >.
Definition at line 105 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| basic_pntr& basic_pntr< T, lgBC >::operator-= | ( | const ptrdiff_t | n | ) |  [inline] | 
        
Reimplemented in const_pntr< T, lgBC >.
Definition at line 115 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| T* basic_pntr< T, lgBC >::operator-> | ( | ) |  const [inline] | 
        
Reimplemented in const_pntr< T, lgBC >.
Definition at line 121 of file container_classes.h.
References basic_pntr< T, lgBC >::p_index_checked().
| bool basic_pntr< T, lgBC >::operator< | ( | const basic_pntr< T, lgBC > & | t | ) |  const [inline] | 
        
Definition at line 132 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| bool basic_pntr< T, lgBC >::operator<= | ( | const basic_pntr< T, lgBC > & | t | ) |  const [inline] | 
        
Definition at line 133 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| bool basic_pntr< T, lgBC >::operator== | ( | const basic_pntr< T, lgBC > & | t | ) |  const [inline] | 
        
Definition at line 130 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| bool basic_pntr< T, lgBC >::operator> | ( | const basic_pntr< T, lgBC > & | t | ) |  const [inline] | 
        
Definition at line 134 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| bool basic_pntr< T, lgBC >::operator>= | ( | const basic_pntr< T, lgBC > & | t | ) |  const [inline] | 
        
Definition at line 135 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
| T& basic_pntr< T, lgBC >::operator[] | ( | const ptrdiff_t | n | ) |  const [inline] | 
        
Reimplemented in const_pntr< T, lgBC >.
Definition at line 125 of file container_classes.h.
References basic_pntr< T, lgBC >::p_index_checked().
| T* basic_pntr< T, lgBC >::p_index_checked | ( | const ptrdiff_t | n | ) |  const [inline, private] | 
        
Definition at line 40 of file container_classes.h.
References OUT_OF_RANGE(), and basic_pntr< T, lgBC >::p_p.
Referenced by basic_pntr< T, lgBC >::operator*(), basic_pntr< T, lgBC >::operator->(), and basic_pntr< T, lgBC >::operator[]().
| void basic_pntr< T, lgBC >::p_set_vals | ( | T * | p0, | |
| T * | p1, | |||
| T * | p2 | |||
| ) |  [inline, private] | 
        
Definition at line 54 of file container_classes.h.
References basic_pntr< T, lgBC >::p_p.
Referenced by basic_pntr< T, lgBC >::basic_pntr().
const int basic_pntr< T, lgBC >::p_nd = lgBC ? 3 : 1 [static, private] | 
        
Definition at line 37 of file container_classes.h.
T* basic_pntr< T, lgBC >::p_p[p_nd] [private] | 
        
Definition at line 38 of file container_classes.h.
Referenced by basic_pntr< T, lgBC >::operator!=(), basic_pntr< T, lgBC >::operator++(), basic_pntr< T, lgBC >::operator+=(), basic_pntr< T, lgBC >::operator--(), basic_pntr< T, lgBC >::operator-=(), basic_pntr< T, lgBC >::operator<(), basic_pntr< T, lgBC >::operator<=(), basic_pntr< T, lgBC >::operator==(), basic_pntr< T, lgBC >::operator>(), basic_pntr< T, lgBC >::operator>=(), basic_pntr< T, lgBC >::p_index_checked(), and basic_pntr< T, lgBC >::p_set_vals().
 1.6.1