How to get the address of the return value of a function in C++
<p>Given this prototype which does a Endian conversion:</p>

<pre><code>time_t Flip( time_t );
</code></pre>

<p>I would like to use the return value in a function that takes a BYTE* as an argument.
Something like this:</p>

<pre><code>SetBytesAt( 0, (BYTE*)&amp;(Flip( t )) );
</code></pre>

<p>But this does not compile.  Gives me this error "&amp; requires l-value".
If the () are removed from around the Flip function, the same error is generated.</p>

<p>Now, I know that I can just do this:</p>

<pre><code>time_t temp_t = Flip( t );
SetBytesAt( 0, (BYTE*)&amp;temp_t );
</code></pre>

<p>But it seems to me that I should be able to accomplish the same thing without the temporary temp_t variable.</p>
