In my game engine project, I make extensive use of the STL, mostly of the std::string
and std::vector
classes.
In many cases, I have to ite
But you can use iterators instead.
for (string::const_iterator it = theContainer.begin();
it != theContainer.end(); ++it) {
// do something with *it
}
There are some circumstances under which a compiler may optimize away the .size()
(or .end()
in the iterator case) calls (e.g. only const
access, function is pure
). But do not depend on it.