#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;
}
转自:https://gist.github.com/3910390