Advertisement
Guest User

lambda as default parameter

a guest
Feb 8th, 2017
236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.47 KB | None | 0 0
  1. #include <iostream>
  2. #include <functional>
  3.  
  4. template<typename T>
  5. struct dimension {
  6.     T v_;
  7. };
  8.  
  9. template<typename T, typename F = std::function<T(T)>>
  10. T drawfield(dimension<T> src, F func = [](T v){return v;}) {
  11.     return func(src.v_);
  12. }
  13.  
  14. int main() {
  15.     const auto a = drawfield(dimension<int>{3});
  16.     std::cout << "a: " << a << std::endl;
  17.  
  18.     const auto b = drawfield(dimension<int>{4}, [](int v) { return v*2; });
  19.     std::cout << "b: " << b << std::endl;
  20. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement