目录
实现容器遍历
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();
- }
结果

-
相关阅读:
封装unordered_map和unordered_set
基于单片机的导盲拐杖设计
Honor of Kings PC Simulator S35
【FPGA教程案例22】基于FIFO核的可控任意长度延迟器设计
Java面试复习题汇总
NVIDIA CUDA Toolkit
私藏干货分享:关于企业架构中如何进行平台化
在langchain中使用带简短知识内容的prompt template
SAP Spartacus home 页面读取 product 数据的请求的 population 逻辑
API接口:概述、设计、应用与未来趋势
-
原文地址:https://blog.csdn.net/qq_64691289/article/details/128194117