原文地址:http://www.cplusplus.com/reference/algorithm/for_each/
std::for_each
template <class InputIterator, class Function>
Function for_each (InputIterator first, InputIterator last, Function fn);
Applies function fn to each of the elements in the range [first,last)
.
对范围内每个元素都调用函数fn.例子:
#include <iostream> #include <algorithm> #include <vector> #include <array> using namespace std; void foreach(){ vector<int> vi{1,5,7,8,9,9,8,5,9}; cout<<"vi="; auto it=for_each(vi.begin(),vi.end(),[](int i){cout<<i<<" ";}); cout<<endl; }
运行结果:
The behavior of this template function is equivalent to:
|
|
Parameters
- first, last
- Input iterators to the initial and final positions in a sequence. The range used
is[first,last)
, which contains all the elements between first and last, including the element pointed by first but not the element pointed by last.
元素的范围。 - fn
- Unary function that accepts an element in the range as argument.
This can either be a function pointer or a move constructible function object.
Its return value, if any, is ignored.
一个接受一个参数的一元函数。
该函数的返回值会被忽略。
Return value
返回的是一个仿函数fn,这个我也不知道怎么用…
Example
|
|
Output:
myvector contains: 10 20 30
myvector contains: 10 20 30
|
Complexity
Linear in the distance between first and last: Applies fn to each element.
Data races
The objects in the range [first,last)
are accessed (each object is accessed exactly once).
These objects may be modified if InputIterator is a mutable iterator type and fn is not a constant function.
Exceptions
Throws if fn throws or if any of the operations on iterators throws.
Note that invalid arguments cause undefined behavior.
——————————————————————————————————————————————————————————————————
//写的错误或者不好的地方请多多指导,可以在下面留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。
转载请注明出处:http://blog.csdn.net/qq844352155
author:天下无双
Email:coderguang@gmail.com
2014-9-13
于GDUT
——————————————————————————————————————————————————————————————————