Strange answers for a far from being stupid question ...
Actually this guy has good companions:
Just look here:
(Alexandrescu opinion)[
^]
It explain why iterators may be considered far from ideal, but doing so, it also explain how they work.
Unortunatly, the STL is what the today C++ allows to define.
Future releases may be will be different.
Moral: don't "escape" the STL, understand it and find a bette rway to enhaence it!