fork download
  1. #include <iostream>
  2. #include <functional>
  3.  
  4. class A
  5. {
  6. std::function<void()> m_Lambda;
  7.  
  8. public:
  9. A(std::function<void()> lambda): m_Lambda(lambda) {}
  10.  
  11. void ExecuteLambda()
  12. {
  13. m_Lambda();
  14. }
  15. };
  16.  
  17. int main()
  18. {
  19. int i1 = 1;
  20. int i2 = 2;
  21.  
  22. const auto lambda = [&]()
  23. {
  24. std::cout << "i1 == " << i1 << std::endl;
  25. std::cout << "i2 == " << i2 << std::endl;
  26. };
  27.  
  28. A a(lambda);
  29. a.ExecuteLambda();
  30.  
  31. return 0;
  32. }
Success #stdin #stdout 0s 5632KB
stdin
Standard input is empty
stdout
i1 == 1
i2 == 2