C++, iterating over the elements of a container requires a lot of code. Other languages like
Java have shortcuts that allow one to write a simple
foreach statement that automatically walks the container from start to finish.
C++11 has a similar feature. The statement (range-based)
for will allow for easy iteration over container of elements:
This form of
for, called the
range-based for, will iterate over each element in the container. It will work for C-style arrays, initializer lists, and any type of container that has a
end() function defined for it that returns iterators. All of the standard library containers that have begin/end pairs will work with the range-based for statement.
Well there is not much to ponder over this feature, except that container should have begin/end function returning iterators to be usable with range-based for loop. This is mostly syntactic sugar, but as sugar it is sweet.