在C++中,foreach循環通常稱為范圍基于for循環(range-based for loop)或簡稱為for each循環。它是C++11標準引入的一種新的語法結構,用于更方便地遍歷容器或其他可迭代對象的元素。
foreach循環的語法格式如下:
for (element : collection) {
// 執行循環體操作
}
其中,element是用于存儲每個迭代元素的變量,collection是需要遍歷的容器或可迭代對象。
使用foreach循環時,編譯器將自動推導出element的類型,并且在每次循環迭代時,element的值將被自動賦值為collection中的每個元素。
以下是一個使用foreach循環遍歷vector容器的示例:
#include <iostream>
#include <vector>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
for (int num : numbers) {
std::cout << num << " ";
}
return 0;
}
輸出結果為:1 2 3 4 5
可以看到,foreach循環使得遍歷容器的操作更加簡潔和直觀。它適用于所有支持迭代器的容器,例如vector、list、set等,以及其他可迭代對象,如數組和字符串。