2011-03-15 2 views
2

Disons que j'ai un C++ 0x tuple:Expansion d'un std :: tuple

tuple<int,int,int> t(1,2,3); 

Maintenant, je peux faire ce qui suit pour en extraire les éléments de t:

int i,j,k; 
make_tuple<int&,int&,int&>(i,j,k) = t; 

Y at-il moyen moins verbeux d'y parvenir? Je connais la syntaxe get<0>(t); ce n'est pas ce que je suis après.

Répondre

5

Vous pouvez utiliser tie pour que:

std::tie(i, j, k) = t; 
+0

Excellent, je savais que je l'avais vu qu'il était possible. – Petter