C # méthode anonyme

Nous avons dĂ©jĂ  mentionnĂ©, est une mĂ©thode de dĂ©lĂ©guĂ© ayant la mĂȘme Ă©tiquette pour rĂ©fĂ©rence. En d'autres termes, vous pouvez utiliser l'objet dĂ©lĂ©guĂ© peut ĂȘtre rĂ©fĂ©rencĂ© par les appels de mĂ©thode de dĂ©lĂ©guĂ©.

méthode Anonymous (méthodes anonymes) pour fournir un bloc de code passe comme une technologie de paramÚtre de délégué.méthode Anonymous est non seulement le nom de la méthode principale.

Dans la méthode anonyme, vous ne devez spécifier un type de retour, il est l'instruction de retour à l'intérieur du corps de la méthode inférée.

Ecrire syntaxe de méthode anonyme

Les méthodes anonymes en créant instance de délégué mot de déclarer undélégué.Par exemple:

déléguer NumberChanger void (int n);
fr.
NumberChanger nc = délégué (int x)
{
    Console.WriteLine ( "MĂ©thode Anonyme: {0}", x);
};

Bloc de codeConsole.WriteLine ( "Anonymous Méthode: {0}", x); fait l'objet de méthodes anonymes.

DĂ©lĂ©guĂ© peut ĂȘtre invoquĂ© par une mĂ©thode anonyme pour ĂȘtre invoquĂ© par la mĂ©thode de dĂ©nomination, Ă  savoir, en passant des paramĂštres Ă  la mĂ©thode d'objet dĂ©lĂ©guĂ©.

Par exemple:

nc (10);

Exemples

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

using System;

déléguer NumberChanger void (int n);
DelegateAppl d'espace de noms
{
    classe TestDelegate
    {
        static int num = 10;
        AddNum public static void (int p)
        {
            num + = p;
            Console.WriteLine ( "méthode nommée: {0}", num);
        }

        public static void MultNum (int q)
        {
            num * = q;
            Console.WriteLine ( "méthode nommée: {0}", num);
        }
        int public static getNum ()
        {
            retour num;
        }

        static void Main (string [] args)
        {
            // Utiliser des méthodes anonymes pour créer des instances de délégué NumberChanger nc = délégué (int x)
            {
               Console.WriteLine ( "MĂ©thode Anonyme: {0}", x);
            };
            
            // Appel de la méthode utilisant nc délégué anonyme (10);

            // Utiliser une méthode nommée instancier délégué nc = new NumberChanger (AddNum);
            
            // Utilisation délégué nommé nc méthode d'invocation (5);

            // En utilisant une autre méthode de dénomination pour instancier délégué nc = new NumberChanger (MultNum);
            
            // Utilisation délégué nommé nc méthode d'invocation (2);
            Console.ReadKey ();
        }
    }
}

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

Anonyme MĂ©thode: 10
Nommé Méthode: 15
Nommé Méthode: 30