#include <deref_iterator.h>
Public Types | |
types | |
| typedef IT | base_type |
| typedef VAL | value_type |
| typedef DerefIterator< VAL, IT > | self_type |
Public Member Functions | |
construction | |
| DerefIterator () | |
| DerefIterator (const self_type &st) | |
| DerefIterator (const base_type &bt) | |
operators | |
| self_type & | operator= (const self_type &st) |
| value_type & | operator* (void) const |
| value_type * | operator-> (void) const |
Iterator wrapper that dereferences pointers at access.
Consider there is a vector in which Thing* pointers are stored for some reason, but the pointers are all non-Null
vector<Thing*> things;
...then the vector can be treated like a vector<Thing>:
for( DerefIterator< Thing, vector<Thing>::iterator > it=things.begin(); it != things.end(); ++it ) { Thing& t = *it; it->method(); }
| typedef IT shawn::DerefIterator< VAL, IT >::base_type |
| typedef VAL shawn::DerefIterator< VAL, IT >::value_type |
| typedef DerefIterator<VAL, IT> shawn::DerefIterator< VAL, IT >::self_type |
| shawn::DerefIterator< VAL, IT >::DerefIterator | ( | ) | [inline] |
| shawn::DerefIterator< VAL, IT >::DerefIterator | ( | const self_type & | st | ) | [inline] |
| shawn::DerefIterator< VAL, IT >::DerefIterator | ( | const base_type & | bt | ) | [inline] |
| self_type& shawn::DerefIterator< VAL, IT >::operator= | ( | const self_type & | st | ) | [inline] |
| value_type& shawn::DerefIterator< VAL, IT >::operator* | ( | void | ) | const [inline] |
| value_type* shawn::DerefIterator< VAL, IT >::operator-> | ( | void | ) | const [inline] |
1.5.6