Example #1
0
        static void Main(string[] args)
        {
            //Methode 1  - Déclaration d'un pointeur de fonction (grande portée)
            CalculatriceV1 add = AdditionV1;
            //Methode 2 - Declaration d'un pointeur de fonction (portée plus courte)
            CalculatriceV1 Soustraction = delegate(double nb1, double nb2)
            {
                return(nb1 - nb2);
            };
            //Methode 3 - Declaration d'un nouveau délégué (portée tres courte)
            Action <double> AfficheV1 = (s) => Console.WriteLine("Resultat : {0}", s);

            //Utilisation du délégué AfficheV1 avec celui du add
            AfficheV1(add(7, 3));
            //Idem mais avec la soustraction
            AfficheV1(Soustraction(7, 3));
            //Declaration d'une deuxieme version située dans une autre classe
            CalculatriceV2 addV2 = Deleg.AdditionV2;

            //Utilisation de cette deuxieme version
            AfficheV1(addV2(7, 4));

            //Suite du test dans une autre classe
            Deleg d = new Deleg();
        }
Example #2
0
        private void start()
        {
            //Utilisation de AfficheV2 déclaré en haut
            AfficheV2(AdditionV2(1, 1));
            //Utilisation de l'addition V1 dans la classe Program
            CalculatriceV1 addv1 = Program.AdditionV1;

            //Idem mais cette fois ci on utilise la version 2 - Méthode Basique -> appel de fonction
            AfficheV2(AdditionV2(1, 2));
            //Idem mais cette fois ci en utilisant le délégué
            CalculatriceV2 addv2 = AdditionV2;

            //Utilisation du délégué déclaré au dessus
            AfficheV2(addv2(1, 3));
        }