You can get the value of the n
th element of an std::tuple
using std::get<n>(tuple)
. But I need to pass one element of that tuple as reference to a function.
How do I get the reference to an element of a std::tuple
?
std::get
returns a reference(either const or non-const), so this works:
void fun(int &a) {
a = 15;
}
void test() {
std::tuple<int, char> foo{ 12, 'a' };
fun(std::get<0>(foo));
}
Demo here.
get
returns a reference, rvalue reference or const reference depending on the type of its argument.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With