Is there a typo in the C++ Assignment Operator tutorial?
<p><a href="http://brskari.wordpress.com/2011/02/24/c-assignment-operator-or-how-i-learned-to-stop-worrying-and-not-check-for-self-assignment/" rel="nofollow">This</a> is a good tutorial that illustrates the correct way to design C++ assignment operator.</p>

<p>In the end, the author provides the following alternative implementation for the operator as follows:</p>

<pre><code>1   Foo&amp; operator=(Foo rhs)
2   {
3       swap(rhs);
4       return *this;
5   }
</code></pre>

<p>Based on the <a href="http://www.cplusplus.com/reference/algorithm/swap/" rel="nofollow">swap</a>, the line <code>3</code> should be <code>swap(*this, rhs)</code> or <code>swap(rhs, *this)</code>.</p>

<p><strong>Question</strong>> Is my understanding correct?</p>

<p>Thank you</p>
