#include <iostream>
#include <algorithm>
#include <array>
#include <vector>
#include <functional>
using namespace std;
bool f(int i){
return i>15;
}
bool f2(int i,int t){
return i>t;
}
int main(){
array<int,8> test = {3,5,7,11,13,17,19,23};
array<int,8>::iterator it;
it=find(test.begin(),test.end(),11);
it=find_if(test.begin(),test.end(),f);//找到第一个大于15的数
it=find_if(test.begin(),test.end(),bind2nd(ptr_fun(f2),15));//找到第一个大于15的数
it=find_if(test.begin(),test.end(),bind2nd(greater<int>(),15));//利用函数模版
it=find_if(test.begin(),test.end(),bind2nd(equal_to<int>(),11));
cout<<*it;
return 0;
}