程序员社区

一元谓词

概念:
在这里插入图片描述
输出vector容器中大于60的数字

#include<iostream>
using namespace std;
#include<vector>
#include<algorithm>
class   overSixty {
public:
	bool operator()(int val)
	{
		return val > 60;
	}
};
void test()
{
	vector<int> v;
	v.push_back(74);
	v.push_back(54);
	v.push_back(87);
	v.push_back(45);
	v.push_back(90);
	v.push_back(67);
	//用到算法  find_if
	//第三个参数传入一个匿名函数对象----传入一个函数
	vector<int>::iterator it=find_if(v.begin(), v.end(), overSixty());
    //找到返回迭代器,找不到返回end()迭代器
	while (it != v.end())
	{
		cout << *it << endl;
		//传入的是迭代器,不能传入it++,it++是it=it+1不是迭代器,是表达式
		it = find_if(it+1, v.end(), overSixty());
	}
}
int main()
{
	test();
	system("pause");
	return 0;
}

在这里插入图片描述

赞(0) 打赏
未经允许不得转载:IDEA激活码 » 一元谓词

相关推荐

  • 暂无文章

一个分享Java & Python知识的社区