On peut obtenir un élément à partir de std::tuple
par index en utilisant std::get
. Analogiquement, comment set l'élément du tuple par index ?
Réponses
Trop de publicités?std::get
renvoie une référence à la valeur. Donc vous définissez la valeur comme ceci :
std::get<0>(myTuple) = newValue;
Cela suppose bien sûr que myTuple
est non-const. Vous pouvez même déplacer des éléments hors d'un tuple via std::move
en l'invoquant sur le tuple :
auto movedTo = std::get<0>(std::move(myTuple));
phaedrus
Points
8060
La version non-const de get
renvoie une référence . Vous pouvez affecter à la référence. Par exemple, supposons que t
est un tuple, alors : get<0>(t) = 3;