Bibliothèque de tuples C ++ - get

La description

Il est utilisé pour obtenir un élément et renvoie une référence au Ith élément du tuple tpl.

Déclaration

Voici la déclaration de 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;

Paramètres

  • I - Il contient la position de l'élément.

  • Types - Il contient le type d'élément.

Valeur de retour

Il renvoie une référence au Ith élément du tuple tpl.

Des exceptions

No-throw guarantee - cette fonction membre ne lève jamais d'exceptions.

Courses de données

lhs et rhs, sont accessibles, et jusqu'à tous ses membres sont accessibles.

Exemple

Dans l'exemple ci-dessous pour 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;
}

La sortie devrait être comme ça -

tuple contains: 20 and x