Maison > développement back-end > C++ > Comment puis-je passer des méthodes comme paramètres en C # à l'aide de délégués?

Comment puis-je passer des méthodes comme paramètres en C # à l'aide de délégués?

Mary-Kate Olsen
Libérer: 2025-02-01 01:31:09
original
833 Les gens l'ont consulté

How Can I Pass Methods as Parameters in C# Using Delegates?

transmettant C # en tant que paramètre

Lors du traitement de plusieurs méthodes avec des paramètres et des types de retour similaires, mais implémentant différentes méthodes, vous devez appeler dynamiquement ces méthodes en fonction du nom de la méthode. En C #, l'utilisation de la commission est une solution efficace.

Dans l'exemple fourni, l'objectif est de créer une méthode

, qui utilise le nom d'une autre méthode comme paramètre et appelle la méthode. Étant donné que les paramètres de nécessitent une signature de méthode spécifique, la complexité se produira.

.NET Framework a fourni une commission appelée RunTheMethod, nous permettant de spécifier un type de signature de méthode de sécurité. En utilisant , nous pouvons définir les paramètres RunTheMethod comme une méthode qui accepte un paramètre de chaîne et renvoie un entier.

Ce qui suit est l'implémentation après modification: Func Func RunTheMethod Grâce à cette modification, nous pouvons désormais transmettre différentes méthodes en tant que paramètres à

:

<code class="language-csharp">public bool RunTheMethod(Func<string, int> myMethodName)
{
    int i = myMethodName("My String");
    return true;
}</code>
Copier après la connexion
Cette méthode offre une flexibilité et simplifie l'organisation de code en permettant des méthodes d'appel dynamiques en fonction du nom de la méthode.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal