Advice on iterator vs. index efficiency

Neal Becker ndbecker2@gmail.com
Fri Oct 5 18:45:00 GMT 2007


Based on advice from some time back, I write algorithms to use iterators
rather than index-based loops.  Often, this requires jumping through
considerable hoops.

I'm just wondering, with current gcc loop optimizations, it this advice
still relevant?  For example:

< iterator style loop >
for (; i != end (container); ++i)
  do something with (*i);

< index style loop >
for (int i = 0; i < size (container); ++i)
  do something with container[i];

Is there (in general) a difference in speed for these 2 styles?  What about
if the containers are multi-dimensional and loops are nested?



More information about the Gcc-help mailing list