title: How is it possible to get a reference to an rvalue?
body: <p>I have used <code>std::move</code> and <code>std::forward</code> in C++. My question is: how are these functions actually implemented by the standard library?</p>
  
  <p>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?</p>
  
  <p>Do these new facilities allow for something like:</p>
  
  <pre><code>auto x = &amp;(3); 
  </code></pre>
  
  <p>or something like that? Can you get a reference to an rvalue that isn't just a <code>std::move</code>/<code>forward</code> returned lvalue?</p>
  
  <p>Hopefully these questions make sense. I couldn't find good information on Google, just tutorials on perfect forwarding, etc.</p>