This program illustrates typical uses of the default vector class iterator (which is a random access iterator), and also shows the use of operators ->, [], <, >, <=, >=, +=, -= and == with vector class iterators. Note the strong analogies between vector class iterators and pointers. Press Enter to continue ... Here are the values in our vector: 1 2 4 8 16 32 64 Press Enter to continue ... p1 is set to point at the first component and p2 to one-past the last. Press Enter to continue ... p1[2] == p2[-5] == 4 Press Enter to continue ... Now we perform p1 += 2; and p2 -= 5;. Press Enter to continue ... p1 == p2, so *p1 == *p2 == 4 Press Enter to continue ... Now we've performed p1--; and p2++;, so ... p1 < p2 is true p1 <= p2 is true p1 > p2 is false p1 >= p2 is false Press Enter to continue ... Locations (accessed with the -> operator): (1, 2) (4, 5) Press Enter to continue ...