این نوع حلقه که در c++11(همان C++0x) معرفی شد، الآن در زبان های برنامه نویسی جاوا، سی شارپ، پایتون، پرل و روبی وجود دارد،و برای انجام دادن یک عمل برای تمام اعضای یک مجموعه - مثلا یک آرایه - است. کد زیر را در نظر بگیرید:
int ary[5] = {1, 2, 4, 8, 16};
for (int i = 0; i < 5; i++){
cout << ary[i] << endl;
}
اما با استفاده از حلقه for-each میتوانید کار بالا را بصورت زیر انجام بدهید:
int ary[5] = {1, 2, 4, 8, 16};
for (a : ary){
cout << a << endl;
}