Advertisement
elvman

Untitled

May 16th, 2018
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. const int base = 10;
  2.  
  3. function<int(int, int)> lambda1 = [](int i, int base)
  4. {
  5. return i * base;
  6. };
  7. total = 0;
  8. start = high_resolution_clock::now();
  9. for (int i = 0; i < num; ++i)
  10. {
  11. total += lambda1(i, base);
  12. }
  13. end = high_resolution_clock::now();
  14. std::cout<<"result: "<<total<<"\nlambda1 call elapsed: \t"<<duration_cast<nanoseconds>(end-start).count()<<" nanoseconds.\n"<<std::endl;
  15.  
  16. function<int(int)> lambda2 = [base](int i)
  17. {
  18. return i*base;
  19. };
  20. total = 0;
  21. start = high_resolution_clock::now();
  22. for (int i = 0; i < num; ++i)
  23. {
  24. total += lambda2(i);
  25. }
  26. end = high_resolution_clock::now();
  27. std::cout<<"result: "<<total<<"\nlambda2 call elapsed: \t"<<duration_cast<nanoseconds>(end-start).count()<<" nanoseconds.\n"<<std::endl;
  28.  
  29. /*result: 4995000
  30. lambda1 call elapsed: 4006 nanoseconds.
  31.  
  32. result: 4995000
  33. lambda2 call elapsed: 3737 nanoseconds.*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement