| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 
 | bool cmpInt(int a, int b) {return a < b;}class CmpInt {
 bool operator()(const int a, const int b) const {
 return a < b;
 }
 };
 int main() {
 std::vector<int> items { 4, 3, 1, 2 };
 std::sort(items.begin(), items.end(), cmpInt);
 std::sort(items.begin(), items.end(), CmpInt());
 std::sort(items.begin(), items.end(),
 [](int a, int b) { return a < b; }
 );
 return 0;
 }
 template <class RandomAccessIterator, class Compare>
 void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp) {
 
 if ( comp(*it1, *it2) )
 
 }
 
 std::function<bool(int, int)> f1(cmpInt);
 std::function<bool(int, int)> f2(CmpInt);
 std::function<bool(int, int)> f3([](int a, int b) { return a < b;} );
 
 
 |