Donnez un exemple d'utilisation des délégués en C#.
sobes.tech IA
Réponse de l'IA
Les délégués sont des pointeurs de type sécurisé vers des méthodes. Ils permettent de passer des méthodes en tant qu'arguments, de les assigner à des variables et de les invoquer via ces variables. Les délégués sont largement utilisés pour créer des événements, des rappels et la programmation asynchrone.
Exemple d'utilisation d'un délégué :
-
Déclaration du délégué : Définir la signature de la méthode vers laquelle le délégué peut pointer.
public delegate int MyDelegate(int x, int y); -
Définition des méthodes : Créer des méthodes avec la signature correspondant au délégué.
public class Calculator { public int Add(int a, int b) { return a + b; } public int Subtract(int a, int b) { return a - b; } } -
Utilisation du délégué : Créer une instance du délégué et lui assigner une méthode. Ensuite, appeler la méthode via le délégué.
public class Program { public static void Main(string[] args) { Calculator calc = new Calculator(); // Créer une instance du délégué et lui assigner la méthode Add MyDelegate del = new MyDelegate(calc.Add); // Appeler la méthode Add via le délégué int result1 = del(10, 5); // result1 = 15 Console.WriteLine($"Résultat de l'addition : {result1}"); // Réassignation du délégué à la méthode Subtract del = calc.Subtract; // Appeler la méthode Subtract via le délégué int result2 = del(10, 5); // result2 = 5 Console.WriteLine($"Résultat de la soustraction : {result2}"); } }
Dans cet exemple, MyDelegate peut pointer vers n'importe quelle méthode qui accepte deux arguments entiers (int x, int y) et retourne un entier (int). Nous créons deux instances du délégué (del), leur assignons les méthodes Add et Subtract, puis utilisons le délégué pour appeler ces méthodes.