Si può ottenere un elemento std::tuple
dall'indice usando std::get
. Analogamente, come impostare l'elemento della tupla per indice?
Risposte:
std::get
restituisce un riferimento al valore. Quindi imposti il valore in questo modo:
std::get<0>(myTuple) = newValue;
Questo ovviamente presuppone che myTuple
non sia const. Puoi anche spostare gli elementi fuori da una tupla tramite std::move
, invocandoli sulla tupla:
auto movedTo = std::get<0>(std::move(myTuple));
La versione non const di get
restituisce un riferimento . È possibile assegnare al riferimento. Ad esempio, supponiamo che t
sia tupla, quindi:get<0>(t) = 3;