STL算法 ------- transform() 与 for_each()比较
来源:互联网 发布:arm-linux配置环境 编辑:程序博客网 时间:2024/05/16 08:15
1. for_each() 速度快 不灵活(只能对一个容器的某个区间进行操作)
2. transform() 速度慢 非常灵活(可以对多个容器的多个区间操作)
#include <iostream>#include <algorithm>#include <vector>using namespace std;void PrintVec( vector<int>& vec ){for(vector<int>::iterator itr= vec.begin(); itr!=vec.end(); ++itr){cout<<*itr<<' ';}cout<<endl;}//for_each//传引用 速度快void square( int& elem ){elem = elem * elem;}//trans_form//传入时进行一次拷贝 返回的时候一次拷贝int square2( int elem ){return elem*elem;}int main( int argc, char** argv ){vector<int> a;vector<int> b;for(int i=1; i<=9; ++i){a.push_back(i);b.push_back(i);}cout<<"vector a:"<<endl;PrintVec(a);for_each(a.begin(), a.end(), square);PrintVec(a);cout<<"vector b:"<<endl;PrintVec(b);//transform(b.begin(), b.end(), b.begin(), b.begin(), multiplies<int>());transform( b.begin(), b.end(), b.begin(), square2 );PrintVec(b);return 0;}
0 0
- STL算法 ------- transform() 与 for_each()比较
- STL中的两个算法for_each与transform
- STL常用遍历算法for_each和transform的比较
- STL遍历算法 “for_each ”,“transform”
- STL_算法 for_each 和 transform 比较
- STL算法(19)——for_each()和transform()的比较
- STL 之for_each,transform
- STL 之for_each,transform
- for_each 和 transform比较
- STL通用算法: for_each,c++11标准范围for,transform.
- for_each和transform用法比较
- STL运算算法-for_each()
- C++ STL 算法:for_each
- STL算法------for_each
- STL算法之for_each
- transform与for_each的用法
- STL之bind2st for_each 和 transform
- STL学习之十四:常用算法 for_each 和 transform以及adjacent_find的示例代码
- 随机数总结
- Fragment内嵌套使用FragmentPagerAdapter出现空白页的问题
- 【小松教你手游开发】【unity实用技能】unity 接WP8 sdk的一些心得
- poj 2488 A Knight's Journey(DFS)
- Gradle和Andriod studio相关文章
- STL算法 ------- transform() 与 for_each()比较
- httpsqs(quequ)队列部署以及简单使用
- poj 3687 Labeling Balls(拓扑排序)
- freebsd内核时钟
- C++中的封装、继承、多态
- 8 GestureDetector 缩放图片
- poj 1094 Sorting It All Out(拓扑排序)
- windows下安装使用pychecker
- Linux os下实现 随os启动而启动oracle database以及listener