define assignment operator= that allows only zero rhs, otherwise won't compile
<p>In short:<br>
How do I define operator= for my class such that it compiles only if rhs is 0 (obj = 0)<br>
but gives compilation error if rhs is non-0 value.<br>
I know it is possible, forgot how.</p>

<p>Longer:<br>
I have class C. I want to allow assignment obj = 0 for object of this class (which means, reset the object), but assignment from no other integer or pointer is defined. No conversion from integer or from pointer is defined other than obj=0.</p>

<pre><code>C obj;
obj = 0; // reset object
</code></pre>

<p>Inside the <code>operator=</code>, I can do <code>assert(rhs == 0)</code>, but that's not good enough.<br>
I know it is possible 
to define <code>operator=</code> such that<br>
it gives compilation error if rhs is not 0. Forgot details.<br>
Can anybody refill ?</p>

<p>Thanks</p>
