范围-based for 循环是 C++11 引入的一种循环语法,它简化了遍历容器和数组等序列的操作,使代码更加清晰和简洁。它通常用于遍历容器类(如数组、向量、列表等)中的元素,或者以范围的形式遍历初始化列表。
范围-based for 循环的语法形式如下:
for (auto element : container) {
// 使用 element 执行操作
}
其中,container
是要遍历的容器,element
是容器中的每个元素,在每次循环迭代中,element
将分别代表容器中的每个元素的值。
如此时我要输出数组中的所有值:
//另一种形式的for循环
int narr[10] = { 0,1,2,3,4,5,6,7,8,9 };
for (int x : narr) {
std::cout << x << std::endl;
}
输出结果:
这段代码使用了 范围-based for 循环,用于遍历数组 narr
中的每个元素并输出。这种循环语法更简洁,使得代码更易读。在每次循环迭代中,变量 x
将依次代表数组 narr
中的每个元素的值,然后通过 std::cout
输出到控制台。因此,代码将输出数组 narr
中的每个元素值,每个元素占据一行。
使用范围-based for 循环时,auto
关键字通常用于自动推导容器中元素的类型,使得代码更加简洁。
char szBuf[13] = "Hello Wolrd!";
for (auto x : szBuf) {
std::cout << x << std::endl;
}
范围-based for 循环对于遍历容器类中的元素非常方便,并且代码更加简洁易读,特别适用于不需要索引信息的情况下。