Difference between & and * as a parameter
<p>What is the difference between the following two parameter types? The first accepts a pointer, which is in effect a memory address, and the second is also a memory address? </p>

<pre><code>foo(float&amp; bar)
{
    // do stuff
}

foo(float* bar)
{
    // do stuff
}
</code></pre>

<p>Could you not call both with:</p>

<pre><code>float pow = 3.0f;

foo(&amp;pow);
</code></pre>

<p>or</p>

<pre><code>float* pow = 3.0f;

foo(pow);
</code></pre>
