fork download
  1.  
  2. #include <list>
  3. #include <algorithm>
  4. #include <iostream>
  5.  
  6. struct Sum {
  7. Sum() { sum = 0; }
  8. void operator()(int n) { sum += n; }
  9.  
  10. int sum;
  11. };
  12.  
  13. int main()
  14. {
  15. std::list<int> nums{3, 4, 2, 9, 15, 267};
  16.  
  17. Sum s = std::for_each(nums.begin(), nums.end(), Sum());
  18.  
  19. std::cout << "sum: " << s.sum << '\n';
  20. std::cout << "elements: ";
  21. for (auto n : nums) {
  22. std::cout << n << " ";
  23. }
  24. std::cout << '\n';
  25. }
Success #stdin #stdout 0s 3428KB
stdin
Standard input is empty
stdout
sum: 300
elements:  3 4 2 9 15 267