Exemple #1
0
        static void Main(string[] args)
        {
            Calculate c = new Calculate();

            CalculateDelegate calDel = new CalculateDelegate(c.Add);

            calDel += new CalculateDelegate(c.Divide);
            calDel += new CalculateDelegate(Calculate.Subtract);
            calDel += c.Add;
            calDel += Calculate.Multiply;

            calDel(35, 5);

            Delegate[] invList = calDel.GetInvocationList();
            Console.WriteLine("\nInvocation List : ");
            for (int i = 0; i < invList.Length; i++)
            {
                Console.WriteLine(invList[i].Method);
            }

            calDel -= c.Add;
            calDel(30, 3);

            Console.ReadKey();
        }
Exemple #2
0
    private void Start()
    {
        calculateDelegate += Addition;
        calculateDelegate += Subtraction;
        calculateDelegate += Multiplication;
        calculateDelegate += (int a, int b) => // Lambda Expression
        {
            Debug.Log("Bölündü");
            return(a / b);
        };

        //calculateDelegate(13, 3);

        Delegate[] funcs = calculateDelegate.GetInvocationList();

        for (int i = 0; i < funcs.Length; i++)
        {
            int result = ((CalculateDelegate)funcs[i]).Invoke(13, 3);
            Debug.Log(result);
        }
    }