天天看點

C# 委托的定義、執行個體化、調用

using System;
using System.Collections.Generic;
using System.Text;

namespace interfaceDemo
{

    //委托的定義
    // [通路修飾符]  delegate  資料類型  委托名(參數清單....)



    //1、定義委托 
    //2.委托的執行個體化
    //3.委托的調用,實際上是将委托指向已經實作的某個方法

    //注意:調用的方法必須傳回類型和定義的委托傳回類型一緻
   
    public delegate int MathOp(int i,int j);//定義委托
    class DelegateTest
    {
        public static int  add(int i, int j) {//方法
            return i + j;
        }
        public static int Mutiply(int num1, int num2) {//方法

            return num1 * num2;
        
        }


        static void Main(string[] args)
        {
            MathOp mo = new MathOp(add);//委托的執行個體化,指向add方法
            MathOp maOp = new MathOp(Mutiply);//委托的執行個體化,指向Mutiply方法

            Console.WriteLine(mo(10, 20));//委托的調用
            Console.WriteLine(maOp(4, 5));//委托的調用

            Console.ReadLine();
        }
    }

 
}