Exemple #1
0
        static void Main(string[] args)
        {
            rectangle  rect     = new rectangle();
            mydelegate rectdale = new mydelegate(rect.area);

            rectdale += rectdale + new mydelegate(rect.perimeter);
            rectdale.Invoke(6.0, 4.5);
            Console.WriteLine();
            rectdale.Invoke(15.3, 11.4);
        }
Exemple #2
0
        static void Main(string[] args)
        {
            rectangle  rect     = new rectangle();
            mydelegate rectdele = new mydelegate(rect.area);

            // alternative
            // mydelegate rectdele = rect.area;
            rectdele += new mydelegate(rect.perimeter);

            rectdele.Invoke(6.0, 4.5);
            Console.WriteLine();
            rectdele.Invoke(15.3, 4.5);
        }
Exemple #3
0
        static void Main(string[] args)
        {
            rectangle  rect      = new rectangle();
            mydelegate Rectangle = new mydelegate(rect.area);

            //Alternative
            //mydelegate Rectangle = rect.area;
            Rectangle += new mydelegate(rect.perimeter);
            //Alternative
            //Rectangle += rect.perimeter;
            Rectangle.Invoke(6.3, 4.5);
            Console.WriteLine();
            Rectangle.Invoke(15.5, 11.6);
        }
Exemple #4
0
        static void Main(string[] args)
        {
            var p = new Person();

            WriteLine((int)FavouriteCar.QiYa);
            WriteLine((int)FavouriteCar.Bmw);
            WriteLine((int)FavouriteCar.Benz);
            WriteLine((int)FavouriteCar.FeryyLi);


            p.CarList = FavouriteCar.Benz | FavouriteCar.FeryyLi;
            // p.CarList = (FavouriteCar)16;
            WriteLine($"p.CarList={p.CarList}");
            WriteLine(p.Children[0].Name);
            WriteLine(p[1].Name);

            var d       = new mydelegate(Mymultiply);
            var answer  = d.Invoke(3);
            var answer2 = d(4);

            WriteLine($"{answer},{answer2}");

            //事件
            p.Shout += P_Shout;
            p.Poke();
            p.Poke();
            p.Poke();
            p.Poke(); p.Poke();
            Read();
        }
        static void Main(string[] args)
        {
            mydelegate delegem = new mydelegate(Topla);

            delegem += Carp;
            delegem.Invoke(2, 3);
        }
Exemple #6
0
        static void Main(string[] args)
        {
            Rectangle  rect     = new Rectangle();
            mydelegate rectdele = new mydelegate(rect.area);

            //Alternative way:
            //mydelegate rectdele = rect.area;

            rectdele += new mydelegate(rect.perimeter);

            //Alternative way:
            //rectdele += rect.perimiter

            rectdele.Invoke(6.0, 4.5);
            Console.WriteLine();
            rectdele.Invoke(15.3, 11.4);
        }
Exemple #7
0
        static void Main(string[] args)
        {
            Console.WriteLine("Main Thread:" + Thread.CurrentThread.ManagedThreadId);
            mydelegate myd = new mydelegate(myfunc);

            Console.WriteLine("Normal Call");
            myd();

            Console.WriteLine("Invoke Call");
            myd.Invoke();

            Console.WriteLine("BeginInvoke Call");
            IAsyncResult iar = myd.BeginInvoke(null, null);

            Console.WriteLine("Wait BeginInvoke Call");
            myd.EndInvoke(iar);
        }
 public void screamOuch(int count)
 {
     Console.WriteLine("Entering ScreamOuch");
     // Phase1 - encountered only one time BEFORE entering the loop
     //if (Phase1 != null) Phase1();
     Phase1?.Invoke();
     for (int i = 1; i <= count; i++)
     {
         Phase2?.Invoke(i, count);
         // Phase2 - encountered count times, once before each WriteLine
         Console.WriteLine($"{Perp} is looking at {Victim} time {i} of {count}");
         Phase3?.Invoke(i, count);
         // Phase3 - encountered count times, once after  each WriteLine
     }
     Phase4?.Invoke();
     // Phase4 - encountered only one time AFTER finishing all iterations of the loop
     Console.WriteLine("Exiting screamOuch");
 }
Exemple #9
0
        static void Main(string[] args)
        {
            MyClass    MC = new MyClass();
            mydelegate md = new mydelegate(MC.Method);

            Console.WriteLine(md.Invoke(56, 57, 58));
            Anonim anonim = delegate(int arg1, int arg2, int arg3)
            {
                Console.WriteLine(((arg1 + arg2 + arg3) / 3));
            };

            anonim.Invoke(25, 35, 45);
            mydelegate md1 = delegate(int arg1, int arg2, int arg3)
            {
                return((arg1 + arg2 + arg3) / 3);
            };

            Console.WriteLine(md1(25, 65, 5));
            Console.WriteLine();

            Console.WriteLine();
            Console.ReadKey();
        }