title: dereferencing a pointer when passing by reference
body: <p>what happens when you dereference a pointer when passing by reference to a function?</p>
  
  <p>Here is a simple example</p>
  
  <pre><code>int&amp; returnSame( int &amp;example ) { return example; }
  
  int main()
  {
    int inum = 3;
    int *pinum = &amp; inum;
  
    std::cout &lt;&lt; "inum: " &lt;&lt;  returnSame(*pinum) &lt;&lt; std::endl;
  
    return 0;          
  
  }
  </code></pre>
  
  <p>Is there a temporary object produced?</p>