Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

tuple_element Class <tuple>

Wraps a tuple element.

// 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;

Index

The index of the designated element.

Tuple

The type of the tuple.

The template class has a nested typedef type that is a synonym for the type at index Index of the tuple type Tuple.

 

#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
*/

Header: <tuple>

Namespace: std

Show:
© 2015 Microsoft