tuple_get.cpp 709 B

123456789101112131415161718192021222324252627
  1. #include <cxxomfort/base.hpp>
  2. #include <cxxomfort/tuple.hpp>
  3. #include <iostream>
  4. #include <string>
  5. int main()
  6. {
  7. using namespace std;
  8. tuple<int, const char*, double>
  9. /*auto*/ t = std::make_tuple(1, "Foo", 3.14);
  10. // index-based access
  11. std::cout << "(" << std::get<0>(t) << ", " << std::get<1>(t)
  12. << ", " << std::get<2>(t) << ")\n";
  13. // type-based access (C++14 or later)
  14. int x = get<int>(t);
  15. /*
  16. std::cout << "(" << std::get<int>(t) ;
  17. std::cout<< std::endl;
  18. std::cout << "(" << std::get<int>(t) << ", "
  19. << std::get<const char*>(t)
  20. << ", " << std::get<double>(t) << ")\n";
  21. */
  22. // Note: std::tie and structured binding may also be used to decompose a tuple
  23. }