#include <iostream>
#include <functional>
#include <algorithm>
#include <list>
using std::cout;
using std::endl;
using std::list;
int main()
{
list<int> lst = { 2, 6, 7, 3, 9, 8, 4 };
list<int>::iterator endp;
endp = remove_if(lst.begin(), lst.end(), std::bind2nd(std::greater<int>(), 6));
list<int>::iterator p = lst.begin();
while (p != endp) {
cout << *p << " ";
p++;
}
cout << endl;
return 0;
}
/*
run:
2 6 3 4
*/