Mientras navegaba por las documentaciones de MSDN sobre anulaciones de Igualdad, un punto me llamó la atención.¿Por qué lanzar a objeto al comparar con nulo?
En los ejemplos de this specific page, algunos cheques nulos están hechos, y los objetos están fundidas con el tipo System.Object al hacer la comparación:
public override bool Equals(System.Object obj)
{
// If parameter is null return false.
if (obj == null)
{
return false;
}
// If parameter cannot be cast to Point return false.
TwoDPoint p = obj as TwoDPoint;
if ((System.Object)p == null)
{
return false;
}
// Return true if the fields match:
return (x == p.x) && (y == p.y);
}
¿Hay alguna razón específica para utilizar este molde, o ¿Es solo un código "inútil" olvidado en este ejemplo?
haciendo que el código de exmaple sea seguro para copiar y pegar. –