for-each循环在c++中如何使用
时间: 2024-10-14 18:07:40 浏览: 4
在C++中,虽然不像Java那样直接提供类似于`for-each`循环的语言特性,但是你可以通过范围基础for循环(Range-Based For Loop)来实现类似的功能,主要是针对容器(如vector、array、list、set等)。这个特性从C++11版本开始引入。
例如,遍历一个整数数组:
```cpp
std::vector<int> numbers = {1, 2, 3, 4, 5};
for (int num : numbers) {
std::cout << num << " ";
}
// 输出:1 2 3 4 5
```
这里,`num`是自动推导出的,它会在每次迭代中取到容器中的下一个元素。对于其他容器,比如`std::map`或`std::set`,你可以按照键(key)或值(value)来遍历:
```cpp
std::map<std::string, int> myMap = {"one", 1, "two", 2};
for (const auto& pair : myMap) {
std::cout << pair.first << ": " << pair.second << "\n";
}
```
在这个例子中,`pair`是一个键值对,`first`和`second`分别表示键和值。