for_each 返回值
2013-03-03 16:52
204 查看
#include <iostream> #include<vector> #include <algorithm> using namespace std; /* for_each()有一个独门秘诀,其他算法概莫有之:那就是它可以返回其仿函数(返回所传入的函数对象的最终状态). 这样我们就可以通过for_each()的返回值来获取仿函数的状态. */ /* 仿函数 */ class MeanValue { public: MeanValue():num(0),sum(0){} void operator()(int elem) { ++num; sum += elem; } double GetMean() { return static_cast<double>(sum)/static_cast<double>(num); } private: long num; long sum; }; void Test__for_each() { vector<int> intVec; for(int i=1;i<10;++i) { intVec.push_back(i); } MeanValue status = for_each(intVec.begin(), intVec.end(), MeanValue()); cout<<"Mean Value = "<<status.GetMean()<<endl; //通过for_each返回值访问其最终状态(返回所传入的函数对象的最终状态). } int main(int argc, char* argv[]) { Test__for_each(); return 0; }
相关文章推荐
- for_each()的返回值
- 为什么不能在ArrayList的For-Each循环中删除元素
- 一个值得研究的系统存储过程 sp_MSforeachtable
- for_each和generator,generator_n
- Spark算子--foreach和foreachPartition
- C++ for_each函数\for_each模板
- js中for in 和 for each in的用法和区别
- STL_算法 for_each 和 transform 比较
- sp_MSforeachtable 与 sp_MSforeachdb
- for_each()
- for_each()算法的使用
- Minimum spanning tree for each edge CodeForces - 609E(ST算法+树链剖分(或倍增LCA)+最小生成树)
- JS中利用jquery 获得class 进行判断 for循环和each两种方法
- 系统存储过程sp_MSforeachtable的使用说明
- Spark中foreachPartition和mapPartitions的区别
- [AS3] for/for in/for each,which one is faster?
- xslt for-each 中,使用动态select
- test for each
- jquery中的for循环与each循环
- MySQL触发器 trigger之for each row