Exemplo n.º 1
0
        static void Main(string[] args)
        {
            MCDelegate mc1       = new MCDelegate(AddNum);
            MCDelegate mc2       = new MCDelegate(MultiplyNum);
            MCDelegate multicast = (MCDelegate)Delegate.Combine(mc1, mc2);

            multicast.Invoke(2, 3);

            MCDelegate multicast1 = mc1 + mc2;

            multicast1.Invoke(5, 6);
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            ClsDelegate3 obj1 = new ClsDelegate3();
            MCDelegate   objd = new MCDelegate(obj1.Add);

            objd += obj1.Sub;
            objd += obj1.Mul;
            objd += obj1.Div;

            objd(10, 20);

            objd -= obj1.Div;
            objd -= obj1.Mul;

            objd(30, 40);
            Console.Read();
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            MathClass math = new MathClass();

            MCDelegate del = new MCDelegate(math.M1);

            del += new MCDelegate(MathClass.M2);

            del += new MCDelegate(math.M1);

            del();
            del -= new MCDelegate(math.M1);
            del();

            MathDelegate del1, del2;

            del1 = new MathDelegate(math.Add);

            del2 = new MathDelegate(MathClass.Multiply);

            //MyInovoke(del1);

            AsyncCallback mycallback = delegate(IAsyncResult ir)
            {
                long result = del1.EndInvoke(ir);

                Console.WriteLine($"The add result done async is {result}");
            };

            IAsyncResult iar = del1.BeginInvoke(111, 333, mycallback, null);

            Console.WriteLine(del2.Invoke(333, 455));


            Console.ReadLine();
        }