概述
for_each是C++泛型算法,其源码如下:
template<typename _InputIterator, typename _Function>
_Function
for_each(_InputIterator __first, _InputIterator __last, _Function __f)
{
// concept requirements
__glibcxx_function_requires(_InputIteratorConcept<_InputIterator>)
__glibcxx_requires_valid_range(__first, __last);
for (; __first != __last; ++__first)
__f(*__first);
return _GLIBCXX_MOVE(__f);
}
- for_each的作用:
对[first, last)范围内的所有元素都执行Function fn的操作。
其中:__first != __last 保证了遍历容器过程中不会越界,最后一个迭代器必然会等于end()
具体如下代码:
void f(const std::vector<int> &c) {
std::for_each(c.begin(), c.end(), [](int i) { std::cout << i; });
}
其作用就是依次遍历容器内的值,并将每个值作为funnction的入参传入,并将其打印。
最后
以上就是傲娇黑夜为你收集整理的C++ for_each的全部内容,希望文章能够帮你解决C++ for_each所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复