Получить элемент std::tupleпо индексу можно с помощью std::get. Аналогично, как установить элемент кортежа по индексу?
Ответы:
std::getвозвращает ссылку на значение. Итак, вы устанавливаете такое значение:
std::get<0>(myTuple) = newValue;
Это, конечно, предполагает, что myTupleэто не const. Вы даже можете перемещать элементы из кортежа std::move, вызывая его в кортеже:
auto movedTo = std::get<0>(std::move(myTuple));
Неконстантная версия get возвращает ссылку . Можно присвоить ссылку. Например, предположим, что tэто кортеж, тогда:get<0>(t) = 3;