Как установить элемент std:: tuple по индексу? - программирование
Подтвердить что ты не робот

Как установить элемент std:: tuple по индексу?

Можно получить элемент из std::tuple по индексу с помощью std::get. Аналогично, как установить элемент tuple по индексу?

4b9b3361

Ответ 1

std::get возвращает ссылку на значение. Поэтому вы устанавливаете значение следующим образом:

std::get<0>(myTuple) = newValue;

Это, конечно, предполагает, что myTuple не const. Вы можете даже перемещать элементы из кортежа через std::move, вызывая его в кортеже:

auto movedTo = std::get<0>(std::move(myTuple));

Ответ 2

Неконстантная версия get возвращает ссылку. Вы можете назначить ссылку. Например, предположим, что t является кортежем, затем: get<0>(t) = 3;