Why operator= returns reference not const reference
<p>The original question is related to overloading operator= and I like to share my findings as it was nontrivial for me to find them.
I cannot imagine reasonable example to use (a=b) as lvalue.
With the help of IRC and google I've found the next article:
  <a href="http://msdn.microsoft.com/en-us/magazine/cc301415.aspx" rel="nofollow">http://msdn.microsoft.com/en-us/magazine/cc301415.aspx</a> </p>

<p>it provides two examples.</p>

<pre><code>  (a=b)=c

  f(T&amp; );
  f(a=b)
</code></pre>

<p>but both a bit not good, and I believe that it is bad practice.
The second one give me the same feeling.
Could you provide more good examples why it should be non constant?</p>
