[Tutoriel c#] Méthode anonyme C#

黄舟
Libérer: 2023-03-04 08:44:01
original
948 Les gens l'ont consulté

Méthode anonyme C#

Nous avons déjà mentionné qu'un délégué est utilisé pour référencer une méthode avec le même label que lui. En d’autres termes, vous pouvez utiliser un objet délégué pour appeler des méthodes pouvant être référencées par le délégué.

Les méthodes anonymes fournissent une technique pour transmettre des blocs de code en tant que paramètres délégués. Les méthodes anonymes sont des méthodes qui n’ont pas de nom mais seulement un corps.

Dans les méthodes anonymes, vous n'avez pas besoin de spécifier le type de retour, il est déduit de l'instruction return dans le corps de la méthode.

Syntaxe d'écriture de méthodes anonymes

Les méthodes anonymes sont déclarées en créant une instance de délégué à l'aide du mot-clé délégué. Par exemple :

delegate void NumberChanger(int n);
...
NumberChanger nc = delegate(int x)
{
    Console.WriteLine("Anonymous Method: {0}", x);
};
Copier après la connexion

bloc de code Console.WriteLine("Anonymous Method: {0}", x est le corps de la méthode anonyme.

Un délégué peut être appelé via une méthode anonyme ou une méthode nommée, c'est à dire en passant des arguments de méthode à l'objet délégué.

Par exemple :

nc(10);
Copier après la connexion

Exemple

L'exemple suivant démontre le concept de méthodes anonymes :

using System;

delegate void NumberChanger(int n);
namespace DelegateAppl
{
    class TestDelegate
    {
        static int num = 10;
        public static void AddNum(int p)
        {
            num += p;
            Console.WriteLine("Named Method: {0}", num);
        }

        public static void MultNum(int q)
        {
            num *= q;
            Console.WriteLine("Named Method: {0}", num);
        }
        public static int getNum()
        {
            return num;
        }

        static void Main(string[] args)
        {
            // 使用匿名方法创建委托实例
            NumberChanger nc = delegate(int x)
            {
               Console.WriteLine("Anonymous Method: {0}", x);
            };
            
            // 使用匿名方法调用委托
            nc(10);

            // 使用命名方法实例化委托
            nc =  new NumberChanger(AddNum);
            
            // 使用命名方法调用委托
            nc(5);

            // 使用另一个命名方法实例化委托
            nc =  new NumberChanger(MultNum);
            
            // 使用命名方法调用委托
            nc(2);
            Console.ReadKey();
        }
    }
}
Copier après la connexion

Lorsque le code ci-dessus est compilé et Une fois exécuté, il produira les résultats suivants :

Anonymous Method: 10
Named Method: 15
Named Method: 30
Copier après la connexion

Ce qui précède est le contenu du [tutoriel c#] Méthode anonyme C# Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www. php.cn) !


Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal