title: Address-of operator (&) vs reference operator(&)
body: <p>I am kind confused about this case:</p>
  
  <p>Declare a pointer:</p>
  
  <pre><code>int b =10;
  int*a=&amp;b;
  </code></pre>
  
  <p>Here &amp; takes the address of b.</p>
  
  <p>Consider another example:</p>
  
  <pre><code>/* Reference to the calling object can be returned */
  
  Test&amp; Test::func ()
  {
     // Some processing
     return *this;
  } 
  </code></pre>
  
  <p>this should be a pointer, *this is the obeject pointed.
  But here we are asking to assign *this to &amp;Test. </p>
  
  <p>What should we modify the code to let the function return the address. Should we still use Test&amp; ?</p>