栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

STL——常用遍历算法

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

STL——常用遍历算法

for_each(iterator beg,iterator end,_func)

beg开始迭代器

end结束迭代器

——func函数或函数对象

	#include 
	#include
	#include
	using namespace std;
	//for_each遍历算法
	void print(int val)
	{
		cout << val << " ";
	}

	class print1
	{
	public:
		void operator()(int val)
		{
			cout << val << " ";
		}
	};
	void test1()
	{
		vectorv;
		v.push_back(1);
		v.push_back(2);
		v.push_back(2);
		v.push_back(3);
		
		//用普通函数
		for_each(v.begin(), v.end(), print);
		//用仿函数
		for_each(v.begin(), v.end(), print1());
	}

transform(iterator beg1,iterator end1,iterator beg2,_func)

beg1原容器起始位置

end1原容器终止位置

beg2接收容器起始位置

_func运算函数

	#include 
	#include
	#include
	using namespace std;
	//transform遍历算法
	class transform1
	{
	public:
		int operator()(int v)
		{
			return v;
		}
	};


	void test1()
	{
		vectorv;
		v.push_back(1);
		v.push_back(2);
		v.push_back(3);
		v.push_back(4);
		
		vectorv2;
		//目标容器需要提前开辟空间
		v2.resize(v.size());
		transform(v.begin(), v.end(), v2.begin(), transform1());
	}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/347316.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号