В Qt цикл foreach можно использовать с различными списочными контейнерами - QList, QMap.
Простой пример перебора значений списка без итераторов выглядит так:
QList<int> list;
foreach( int value, list )
{
qDebug() << "Item value: " << value;
}
Эта конструкция более легкая и простая, чем синтаксис через итераторы.
Примечание. Иногда возникает воспрос: как удалять элементы при обходе списка QList или массива QVector? Об идеологически верном методе удаления написано в статье Как правильно удалять элементы из QVector или из QList в момент обхода массива (списка).