Libreria di tuple C ++: ottieni

Descrizione

Viene utilizzato per ottenere l'elemento e restituisce un riferimento all'elemento Ith della tupla tpl.

Dichiarazione

Di seguito è riportata la dichiarazione per std :: get.

C ++ 98

template <size_t I, class... Types>
typename tuple_element< I, tuple<Types...> >::type& get(tuple<Types...>& tpl) noexcept;	
template <size_t I, class... Types>
typename tuple_element< I, tuple<Types...> >::type&& get(tuple<Types...>&& tpl) noexcept;
template <size_t I, class... Types>
typename tuple_element< I, tuple<Types...> >::type const& get(const tuple<Types...>& tpl)
   noexcept;

C ++ 11

template <size_t I, class... Types>
typename tuple_element< I, tuple<Types...> >::type& get(tuple<Types...>& tpl) noexcept;
template <size_t I, class... Types>
typename tuple_element< I, tuple<Types...> >::type&& get(tuple<Types...>&& tpl) noexcept;
template <size_t I, class... Types>
typename tuple_element< I, tuple<Types...> >::type const& get(const tuple<Types...>& tpl)
   noexcept;

Parametri

  • I - Contiene la posizione dell'elemento.

  • Types - Contiene il tipo di elemento.

Valore di ritorno

Restituisce un riferimento all'elemento Ith della tupla tpl.

Eccezioni

No-throw guarantee - questa funzione membro non genera mai eccezioni.

Gare di dati

Si accede a lhs e rhs e fino a tutti i suoi membri.

Esempio

Nell'esempio seguente per std :: get.

#include <iostream>
#include <tuple>

int main () {
   std::tuple<int,char> mytuple (10,'x');

   std::get<0>(mytuple) = 20;

   std::cout << "tuple contains: ";
   std::cout << std::get<0>(mytuple) << " and " << std::get<1>(mytuple);
   std::cout << std::endl;

   return 0;
}

L'output dovrebbe essere così -

tuple contains: 20 and x