Ce qui suit provoquera une récursion infinie sur la méthode de surcharge de l'opérateur ==
Foo foo1 = null;
Foo foo2 = new Foo();
Assert.IsFalse(foo1 == foo2);
public static bool operator ==(Foo foo1, Foo foo2) {
if (foo1 == null) return foo2 == null;
return foo1.Equals(foo2);
}
Comment vérifier les valeurs nulles?
Assert.IsFalse(foo2 == foo1);