Получить элемент 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;