How is it possible to get a reference to an rvalue?
I have used std::move and std::forward in C++. My question is: how are these functions actually implemented by the standard library? If an lvalue is something you can get the address of, and an rvalue is exclusively not an lvalue, how can you actually implement these references? Do these new facilities allow for something like: auto x = &(3); or something like that? Can you get a reference to an rvalue that isn't just a std::move / forward returned lvalue? Hopefully these questions make sense. I couldn't find good information on Google, just tutorials on perfect forwarding, etc. Jonathan Mee I