目录
实现容器遍历
for_each(itertor beg,iterator end,_func);
//遍历算法 遍历容器元素
//beg 开始迭代器
//end 结束迭代器
//_func函数或者函数对象
代码
- #include
- using namespace std;
- #include
- #include
-
- //普通函数
- void print01 (int val)
- {
- cout<< val << " ";
- }
-
- //放寒暑
- class print02
- {
- public:
- void operator()(int val)
- {
- cout<< val << " ";
- }
- };
- void test01()
- {
- vector<int>v;
- for(int i = 0;i < 10;i ++)
- {
- v.push_back(i);
- }
- for_each(v.begin(),v.end(),print01);
- cout<
- for_each(v.begin(),v.end(),print02());
- cout<
-
- }
- int main()
- {
- test01();
- }
代码

2.transform
功能描述
搬运容器到另一个容器
函数原型
transform (iterator beg1,iterator endl, iterator beg2,_func);
//beg1 源容器开始迭代器
//end1 源容器结束迭代器
//beg2 目标函数开始迭代器
//_func 函数或者函数对象
代码
- #include
- using namespace std;
- #include
- #include
-
- class Transform
- {
- public:
- int operator()(int v)
- {
- return v;
- }
- };
- class MyPrint{
- public:
- void operator()(int val)
- {
- cout<< val <<" ";
- }
- };
- void test01()
- {
- vector<int>v;
- for(int i = 0;i < 10;i ++)
- {
- v.push_back(i);
- }
- vector<int>vTarget; //目标函数
- vTarget.resize(v.size()); //目标容器要提前开辟空间
- transform(v.begin(), v.end(), vTarget.begin(),Transform());
-
- for_each(vTarget.begin(),vTarget.end(), MyPrint());
- cout<
-
- }
- int main()
- {
- test01();
- }
结果

-
相关阅读:
非零基础自学Java (老师:韩顺平) 第14章 集合 14.11 Set 接口实现类 - LinkedHashSet
Jmeter性能测试 —— 压力模式
VS Code使用技巧
Google XTS测试简述
【网页设计】期末大作业:化妆品主题——绿色大气的html5响应式化妆品护肤品肌肤网页设计(11页)
高德地图查询经纬度,或者地名(双向查询)
【Python】Python列表排序 list.sort方法和内置函数sorted用法
基于FPGA点阵显示屏设计-毕设
deepin 20.7.1 安装JDK
Spark---持久化,共享变量和RDD之间的依赖关系详解
-
原文地址:https://blog.csdn.net/qq_64691289/article/details/128194117