fork(2) download
  1. #include <iostream>
  2. #include <vector>
  3.  
  4. template <typename T>
  5. struct range_t
  6. {
  7. T b, e;
  8. range_t(T x, T y) : b(x), e(y) {}
  9. T begin()
  10. {
  11. return b;
  12. }
  13. T end()
  14. {
  15. return e;
  16. }
  17. };
  18.  
  19. template <typename T>
  20. range_t<T> range(T b, T e)
  21. {
  22. return range_t<T>(b, e);
  23. }
  24.  
  25. int main()
  26. {
  27. std::vector<int> v{ 1, 2, 3, 4 };
  28.  
  29. for (auto p : range(v.begin()+1, v.end()))
  30. {
  31. std::cout << p << " ";
  32. }
  33. }
  34.  
Success #stdin #stdout 0s 3428KB
stdin
Standard input is empty
stdout
2 3 4