I'd say you could dereference anything that is a reference to something else. By dereferencing a street address, you get the house object "pointed to" by the address Iterator is such an address (but not a pointer in strict sense).