Mega Code Archive

 
Categories / C++ / Algorithm
 

Demonstrate bind2nd()

#include <iostream> #include <list> #include <functional> #include <algorithm> using namespace std; int main() {   list<int> lst;   list<int>::iterator p, endp;   for(int i=1; i < 20; i++) lst.push_back(i);   cout << "Original sequence:\n";   p = lst.begin();   while(p != lst.end()) {     cout << *p << " ";     p++;   }   cout << endl;   endp = remove_if(lst.begin(), lst.end(),                    bind2nd(greater<int>(), 8));   cout << "Resulting sequence:\n";   p = lst.begin();   while(p != endp) {     cout << *p << " ";     p++;   }   return 0; } /*  Original sequence: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Resulting sequence: 1 2 3 4 5 6 7 8   */