Public Member Functions | |
iterator () | |
iterator (MYTYPE *m) | |
iterator (iterator &i) | |
copy constructor | |
MYTYPE * | get_ptr () |
void | operator++ (int) |
pointer post-increment | |
void | operator++ () |
pointer pre-increment | |
void | operator= (iterator p) |
assignment operator | |
MYTYPE & | operator * (void) |
dereference pointer | |
bool | operator== (iterator i) |
bool | operator!= (iterator k) |
Private Attributes | |
MYTYPE * | ptr |
the actual pointer to the internal array in the vector |
now we define the internal iterator class. This allows us to create pointer like objects that will work on our Vector without the user having to know that there is an array inside. I added the begin() and end() methods to the kvector class to support this. The essential feature of an iterator class is that it overload the pointer operators like * and movement operators like ++ and --.
Definition at line 87 of file kvector.cpp.
|
Definition at line 89 of file kvector.cpp. References kvector< MYTYPE >::iterator::ptr.
00089 {ptr = 0;} |
|
Definition at line 90 of file kvector.cpp. References kvector< MYTYPE >::iterator::ptr.
00090 {ptr = m;} |
|
copy constructor
Definition at line 91 of file kvector.cpp. References kvector< MYTYPE >::iterator::get_ptr(), and kvector< MYTYPE >::iterator::ptr. |
|
Definition at line 92 of file kvector.cpp. References kvector< MYTYPE >::iterator::ptr. Referenced by kvector< MYTYPE >::iterator::iterator(), kvector< MYTYPE >::iterator::operator!=(), kvector< MYTYPE >::iterator::operator=(), and kvector< MYTYPE >::iterator::operator==().
00092 { return ptr;} |
|
dereference pointer
Definition at line 108 of file kvector.cpp. References kvector< MYTYPE >::iterator::ptr. |
|
Definition at line 112 of file kvector.cpp. References kvector< MYTYPE >::iterator::get_ptr(), and kvector< MYTYPE >::iterator::ptr.
00112 { return (this->ptr != k.get_ptr());} |
|
pointer pre-increment
Definition at line 100 of file kvector.cpp. References kvector< MYTYPE >::iterator::ptr. |
|
pointer post-increment
Definition at line 99 of file kvector.cpp. References kvector< MYTYPE >::iterator::ptr. |
|
assignment operator
Definition at line 104 of file kvector.cpp. References kvector< MYTYPE >::iterator::get_ptr(), and kvector< MYTYPE >::iterator::ptr. |
|
Definition at line 111 of file kvector.cpp. References kvector< MYTYPE >::iterator::get_ptr(), and kvector< MYTYPE >::iterator::ptr.
00111 { return (this->ptr == i.get_ptr());} |
|
the actual pointer to the internal array in the vector
Definition at line 114 of file kvector.cpp. Referenced by kvector< MYTYPE >::iterator::get_ptr(), kvector< MYTYPE >::iterator::iterator(), kvector< MYTYPE >::iterator::operator *(), kvector< MYTYPE >::iterator::operator!=(), kvector< MYTYPE >::iterator::operator++(), kvector< MYTYPE >::iterator::operator=(), and kvector< MYTYPE >::iterator::operator==(). |