给我讲一下范围for循环
时间: 2023-07-17 08:55:43 浏览: 76
详解for循环
4星 · 用户满意度95%
范围for循环(Range-based for loop),也称为foreach循环,是C++11引入的一种循环结构,用于遍历容器或其他可以迭代的对象的元素。它提供了一种更简洁、直观的方式来遍历序列。
范围for循环的语法如下:
```cpp
for (element_declaration : sequence) {
// 循环体
}
```
其中,`element_declaration` 是一个变量声明,用于接收序列中的元素值。`sequence` 是要遍历的序列,可以是数组、容器、字符串等支持迭代的对象。
下面是一个使用范围for循环遍历数组的示例:
```cpp
int numbers[] = {1, 2, 3, 4, 5};
for (int num : numbers) {
std::cout << num << " ";
}
```
在每次循环迭代中,`num` 依次被赋值为数组 `numbers` 中的元素值,并执行循环体。循环将输出数组中的所有元素。
除了数组,范围for循环还可以用于遍历容器类型,如 std::vector、std::list 等。它也可以与 auto 关键字一起使用,自动推断序列元素的类型。
需要注意的是,范围for循环是按值传递元素的副本进行迭代的,如果需要修改原始序列中的元素,可以使用引用来声明循环变量。例如:`for (int& num : numbers)`。
阅读全文