std::get(std::tuple)
From Cppreference
C++ Standard Library | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Utilities library | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::tuple | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
template< std::size_t I, class... Types >
typename std::tuple_element<I, tuple<Types...> >::type& |
(1) | (C++11 feature) |
template< std::size_t I, class... Types >
typename std::tuple_element<I, tuple<Types...> >::type&& |
(2) | (C++11 feature) |
template< std::size_t I, class... Types >
typename std::tuple_element<I, tuple<Types...> >::type const& |
(3) | (C++11 feature) |
Extracts the Ith element element from the tuple. I is an integer value in [0, sizeof...(Types)).
Contents |
[edit] Parameters
t | - | tuple whose contents to extract |
[edit] Return value
1) Reference to the Ith element of t.
2) Rvalue reference to the Ith element of t, unless the element is of lvalue reference type, in which case lvalue reference is returned.
3) Const reference to the Ith element of t.
[edit] Exceptions
[edit] Example
#include <iostream> #include <string> #include <tuple> int main() { auto t = std::make_tuple(1, "Foo", 3.14); std::cout << "(" << std::get<0>(t) << ", " << std::get<1>(t) << ", " << std::get<2>(t) << ")\n"; }
Output:
(1, Foo, 3.14)