如何获取对 std::tuple 元素的引用



您可以使用std::get<n>(tuple)获取std::tuple的第n个元素的值。但是我需要传递该元组的一个元素作为对函数的引用。

如何获取对std::tuple元素的引用?

std::get 返回一个引用(常量或非常量(,所以这有效:

void fun(int &a) {
    a = 15;
}
void test() {
    std::tuple<int, char> foo{ 12, 'a' };
    fun(std::get<0>(foo));
}

在这里演示。

get返回引用、右值引用或常量引用,具体取决于其参数的类型。

最新更新