1.对区间[_First,_Last)中的每一个元素调用:
2._Func
可以改动元素.
3. _Func
任何返回值都会被忽略
4. 复杂度:线性
下面是个例子:
template<typename T>
inline void INSERT_ELEMENTS(T& coll, int first, int last)
{
for (int i = first; i <= last; ++i)
{
coll.insert(coll.end(), i);
}
}
int main()
{
vector<int>coll;
INSERT_ELEMENTS(coll, 1, 9);
for_each(coll.cbegin(), coll.cend(), [](int elem) {
cout << elem << ' '; });
cout << endl;
}
下面例子示范如何改变每一个元素: