如何通过索引设置 std::tuple 元素?

121

使用std::get可以通过索引从std::tuple中获取元素。类似地,如何通过索引设置元组的元素呢?

2个回答

173

std::get返回值的引用。因此,您可以像这样设置该值:

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

当然,这假设myTuple是非const的。 你甚至可以通过在元组上调用std::move来移动元组中的项:

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

27

get 的非 const 版本返回一个引用,你可以对这个引用进行赋值。例如,假设 t 是一个元组,则可以执行以下操作:get<0>(t) = 3;


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接