c++ vector for for_each 遍历
时间: 2024-10-29 11:18:46 浏览: 28
遍历_C++_
在 C++ 中,`std::vector` 是一种动态数组容器,它提供了一种高效的方式来存储同类型的元素。当你需要遍历整个 `vector` 并对每个元素执行某种操作时,可以使用 `std::for_each` 这个算法。`for_each` 函数接受一个范围对象(如向量)和一个函数对象(通常是一个 lambda 表达式),并按照顺序应用这个函数到范围内的每一个元素。
下面是一个简单的例子:
```cpp
#include <iostream>
#include <vector>
#include <algorithm> // 包含 std::for_each
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
// 使用 for_each 遍历 vector,并打印每个元素的平方
std::for_each(numbers.begin(), numbers.end(), [](int i) {
std::cout << "Square of " << i << ": " << i * i << "\n";
});
return 0;
}
```
在这个例子中,`numbers.begin()` 和 `numbers.end()` 定义了向量元素的起始和结束迭代器范围。lambda表达式 `(i) -> (i * i)` 指定了对每个元素 `i` 应该执行的操作(即计算其平方)。
阅读全文