Je peux affecter une méthode M
pour déléguer l'objet d
avec un type de paramètre moins spécifique, mais lorsque je souhaite affecter une méthode anonyme avec la même signature comme méthode M
à d
, j'obtiens une erreur.Impossible d'affecter pour déléguer une méthode anonyme avec un type de paramètre moins spécifique
Pourquoi est-ce?
class derivedEventArgs : EventArgs { }
delegate void newDelegate(object o, derivedEventArgs e);
static void Main(string[] args)
{
newDelegate d = M; // ok
d = (object o, EventArgs e) => { }; // error
}
public static void M(object o, EventArgs e) { }
Vous avez certainement des conventions de nommage intéressantes qui s'y passent ... –