Operator overloading and different types
<p>I have a class Score which is  going to be heavily used in comparisons against integers.  I was planning on overloading the == operator to enable these comparisons as per the code below ?</p>

<pre><code>public class Score
{
    public Score(int score) {
        Value = score;
    }

    public static bool operator ==(Score x, int y) {
        return x != null &amp;&amp; x.Value == y;
    }

    public static bool operator ==(int y, Score x)
    {
        return x != null &amp;&amp; x.Value == y;
    }
}
</code></pre>

<p>Is this a sensible use of operator overloading ?</p>

<p>Should I be providing overloads for the LH and RH sides of the operators to allow the usage to be symmetrical ?</p>
