C++ search和search_n


#include <iostream>
#include <algorithm>
#include <array>
#include <vector>
#include <functional>

using namespace std;

int main(){
	
	array<int,8> test = {3,5,7,7,11,6,17,19};
	array<int,2> t2 = {11,13};

	array<int,8>::iterator it;

	//找到t2中元素在test中第一次出现的位置,不像find函数只能找一个
	it=search(test.begin(),test.end(),t2.begin(),t2.end());

	//寻找首次连续出现2次7的位置
	it=search_n(test.begin(),test.end(),2,7);

	//寻找首次连续出现2次大于7的位置
	it=search_n(test.begin(),test.end(),2,7,[](int i,int j){return i>j;});

	if(it!=test.end())cout<<it-test.begin();
	

	return 0;
}



你可能感兴趣的:(STL)