Re: Andrei's "iterators must go" presentation
 
alan_mckenney1@yahoo.com wrote:
As I recall, a loop with a RW iterator was
in principle:
     Container<Type>  cont;
     Container<Type>::iterator iter( cont );
     while ( iter++ )
       {
          Type &obj = *iter;
          ...
       }
Read about range-based for loops in C++0x.
By contrast, the STL "iterator" concept is
basically a generalization of the C pointer
concept, which is itself really just some
a memory address with some semantic sugar added.
(In fact, as far as I can tell, every STL
iterator can be implemented as a an object
containing a single memory address.)
No, many STL iterators are more complex than a single memory address. 
The abstraction that iterators present is like the one presented by 
pointers, but its implemention is often far more sophisticaed.
And if you prefer RW-style iterators or pretty much any other iteration 
technique, you can write a straightforward template or two to implement 
it on top of STL-style iterators.
-- 
   Pete
Roundhouse Consulting, Ltd. (www.versatilecoding.com) Author of
"The Standard C++ Library Extensions: a Tutorial and Reference"
(www.petebecker.com/tr1book)
      [ See http://www.gotw.ca/resources/clcm.htm for info about ]
      [ comp.lang.c++.moderated.    First time posters: Do this! ]