Advertisement
Guest User

Untitled

a guest
Jun 24th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.39 KB | None | 0 0
  1. #include <functional>
  2. #include <iostream>
  3. #include <string>
  4. using namespace std;
  5.  
  6. int add(int a, int b) {
  7.     return a + b;
  8. }
  9.  
  10. template <typename A, typename B, typename ret>
  11. function<ret(B)> curry(ret (*func)(A, B), A a) {
  12.     return [=] (B b) -> ret {
  13.         return func(a, b);
  14.     };
  15. }
  16.  
  17. int main(void) {
  18.     auto x = curry(add, 5);
  19.     cout << x(25) << endl; // Prints 30
  20. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement