I was reading about the make_pair()
template function in C++, and couldn't understand why its parameters are rvalue reference variables. Why shouldn't they accept lvalues as well, like a normal variable?
template <class t1, class t2>
pair<v1, v2> make_pair (t1&& x, t2&& y);
What is the use of using rvalue reference variables here?