fork download
  1. #include <iostream>
  2. #include <tuple>
  3.  
  4. template<typename T>
  5. T read(std::istream& is)
  6. {
  7. T value;
  8.  
  9. is >> value;
  10.  
  11. return value;
  12. }
  13.  
  14. template<typename... Ts>
  15. std::istream& operator>>(std::istream& is , std::tuple<Ts...>& tuple)
  16. {
  17. tuple = std::make_tuple( read<Ts>(is)... );
  18.  
  19. return is;
  20. }
  21.  
  22. int main()
  23. {
  24. std::tuple<int,int> tuple;
  25.  
  26. std::cin >> tuple;
  27.  
  28. std::cout << std::get<0>(tuple) << " " << std::get<1>(tuple) << std::endl;
  29. }
Success #stdin #stdout 0s 3344KB
stdin
2 3
stdout
3 2