stdfor each
template<class InputIterator, class Function>
Function for_each(InputIterator first, InputIterator last, Function f);
功效:
将 f
应用于从 first
开始取消引用 [first, last)
范围内的每个迭代器并继续到 last - 1
的结果。
参数:
first, last
- 应用 f
的范围。
f
- 可调用对象,应用于取消引用 [first, last)
范围内每个迭代器的结果。
返回值:
f
(直到 C++ 11)和 std::move(f)
(从 C++ 11 开始)。
复杂:
应用 f
恰好 last - first
次。
例:
Version >= C++ 11
std::vector<int> v { 1, 2, 4, 8, 16 };
std::for_each(v.begin(), v.end(), [](int elem) { std::cout << elem << " "; });
将矢量 v
的每个元素应用给定的函数将此元素打印到 stdout
。