在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等,以及其他可迭代对象,如数组和字符串。