C# Compiler Idiocy
God, the C# compiler is stupid. Every time I overload the operator == for a class, it immediately complains that I also need to overload the operator !=, the Equals() method, and the GetHashCode() method.
Why can’t it implement the operator != and the Equals method by itself? That should be trivial.
And don’t get me started on the GetHashCode() method! I don’t want to implement this method in classes which are not going to be used as hash table keys, yet by putting it in the class Object the language designers are effectively making me do so. Why couldn’t they have defined an interface called IHashKey to be implemented by whoever is interested in acting as a hash key?
