tuple_element Class <tuple>
The latest version of this topic can be found at tuple_element Class.
Wraps a tuple
element.
Syntax
// CLASS tuple_element (find element by index)
template <size_t Index, class Tuple>
struct tuple_element;
// tuple_element for const
template <size_t Index, class Tuple>
struct tuple_element<Index, const Tuple>;
// tuple_element for volatile
template <size_t Index, class Tuple>
struct tuple_element<Index, volatile Tuple>;
// tuple_element for const volatile
template <size_t Index, class Tuple>
struct tuple_element<Index, const volatile Tuple>;
template <size_t Index, class Tuple>
using tuple_element_t = typename tuple_element<Index, Tuple>::type;
Parameters
Index
The index of the designated element.
Tuple
The type of the tuple.
Remarks
The template class has a nested typedef type
that is a synonym for the type at index Index
of the tuple type Tuple
.
Example
#include <tuple>
#include <string>
#include <iostream>
using namespace std;
typedef tuple<int, double, string> MyTuple;
int main()
{
MyTuple c0{ 0, 1.5, "Tail" };
tuple_element_t<0, MyTuple> val = get<0>(c0); //get by index
tuple_element_t<1, MyTuple> val2 = get<1>(c0);
tuple_element_t<2, MyTuple> val3 = get<string>(c0); // get by type
cout << val << " " << val2 << " " << val3 << endl;
}
/*
Output:
0 1.5 Tail
*/
Requirements
Header: <tuple>
Namespace: std