Il suffit de lire l'article msdn sur le remplacement des opérateurs d'égalité hereCast pour objet avant contrôle nul dans Equals primordial
L'extrait suivant me embrouille ...
// If parameter cannot be cast to Point return false.
TwoDPoint p = obj as TwoDPoint;
if ((System.Object)p == null) // <-- wtf?
{
return false;
}
Pourquoi est-il un casting à Object
ici pour effectuer la comparaison null
?
Qu'est-ce que TwoDPoint? Peut-être que c'est un type de valeur: -D – Grzenio
non. Vérifiez le lien ... – jgauffin
Ils ont une meilleure ligne directrice pour Visual Studio 2012. Ils n'ont pas mis le lien dans l'article de 2005, alors je l'ai mis ici: [Comment: définir l'égalité de valeur pour un type (Guide de programmation C#) ] (http://msdn.microsoft.com/en-us/library/dd183755 (v = vs.110) .aspx). – Brk