我是靠谱客的博主 羞涩秋天,最近开发中收集的这篇文章主要介绍C++ for_each()算法解析,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

for_each()算法比较简单,它的作用是遍历容器并对每一个元素执行函数,可以先看下算法的定义:


// TEMPLATE FUNCTION for_each
template<class _InIt,
class _Fn1> inline
_Fn1 for_each(_InIt _First, _InIt _Last, _Fn1 _Func)
{	// perform function for each element
_DEBUG_RANGE_PTR(_First, _Last, _Func);
_For_each(_Unchecked(_First), _Unchecked(_Last), _Func);
return (_STD move(_Func));
}

算法的参数为容器的头迭代器,尾迭代器,函数 ,它的实现方式为

template<class _InIt,
class _Fn1> inline
void _For_each(_InIt _First, _InIt _Last, _Fn1& _Func)
{	// perform function for each element
for (; _First != _Last; ++_First)
_Func(*_First);
}

方法为遍历容器,将当前迭代器所指的元素传入函数处理。
下面做个演示

for_each(tempOpH.begin(), tempOpH.end(), [](OpHistory* right) {
cout << setw(12) << left << (right->GetOpNumber())
<< setw(12) << ((right->GetOpTarge())->GetbooksCode())
<< setw(12) << ((right->GetOpTarge())->GetbooksName())
<< setw(12) << ((right->GetOpTarge())->Getinventory())
<< setw(12) << ((right->GetOpTarge())->GetType() ? "销售类" : "借阅类")
<< setw(12) << (bot)
<< setw(12) << (right->GetOpCount()) << endl;
});

在这里插入图片描述

最后

以上就是羞涩秋天为你收集整理的C++ for_each()算法解析的全部内容,希望文章能够帮你解决C++ for_each()算法解析所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部