Skip to content

Instantly share code, notes, and snippets.

@mike-zhang
Created October 18, 2012 08:08
Show Gist options
  • Save mike-zhang/3910390 to your computer and use it in GitHub Desktop.
Save mike-zhang/3910390 to your computer and use it in GitHub Desktop.
STL find_if in member function
#include <iostream>
#include <functional>
#include <algorithm>
#include <vector>
using namespace std;
class CMyTest
{
public:
bool IsOdd ( int i)
{
return ((i%2)==1);
}
void close()
{
vector<int> myvector;
vector<int>::iterator it;
myvector.push_back(10);
myvector.push_back(25);
myvector.push_back(40);
myvector.push_back(55);
it = find_if(myvector.begin(), myvector.end(),std::bind1st(std::mem_fun(&CMyTest::IsOdd),this));
cout << "The first odd value is " << *it << endl;
cout<<"All odd value :"<<endl;
for(;it != myvector.end();++it)
{
cout<<*it<<endl;
}
}
};
int main () {
CMyTest st1;
st1.close();
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment