C#委托(一)

    视频看到这里了,为了好好地理解,总结是必不可少的,so,I‘m coming.........


    含义:把事情托付给别人或别的机构(办理)


    例子:我早晨没有起床,所以我委托小红给我买中午饭。(没起床持续到noon........)


    通过含义和简单的例子我们都能理解委托是干什么的,但是在C#中委托没有这么简单,通过查阅资料和听讲视频

学习到了多知识,为了更好的理解和运用委托,让我们首先来看一下在C#中委托的格式,毕竟C#是一种面向对象运

行于.NET Framework之上的高级程序设计语言。


格式:

<span style="font-family:KaiTi_GB2312;font-size:18px;background-color: rgb(255, 255, 255);"><span style="font-family:KaiTi_GB2312;font-size:18px;">Public delegate void BuyFoodEventHandler();</span></span>

     
delegate(委托,为。。。代表)是关键词,EvenHandler是一个声明委托的微软C#的命名标准,和C语言中的main()
一样,没有什么特别的含义。

    我们一般的命名标准格式是这样的

<span style="font-family:KaiTi_GB2312;font-size:18px;background-color: rgb(255, 255, 255);">Public void BuyFood()
{
      方法体
}
</span>
    
    相信都能看出区别了吧,所以delegate和EventHandler是区别的关键。在现实生活中委托只是一个命令,不进行任何操作,在程序中也一样,委托只是存放方法的地址,也是什么也不进行操作。

下面来敲一下小红帮我买中午饭的例子:

<span style="font-family:KaiTi_GB2312;font-size:18px;background-color: rgb(255, 255, 255);">    //小红类
   Public void Xiaohong()
   {
      //因为我总是不起床,所以小红总是帮我买午饭
      Public static void BuyFood()
     {
        Console.WriteLine("每次都让我去帮你买饭,什么人啊!");
     }
   }
  //我这个懒人类
    class Myself()
    {
        //声明一个委托,其实就是个“命令”
        public delegate void BuyFoodEventHandler();

        public static void Main(string[] args)
        {
            //这里就是具体阐述这个命令是干什么的,本例是Xiaohong.BuyFood“小红买午饭”
            BuyFoodEventHandler myDelegate = new BuyFoodEventHandler(Xiaohong.BuyFood);

            //这时候委托被附上了具体的方法
            myDelegate();
            Console.ReadKey();
        }
    } </span>

    BuyFoodEventHandler myDelegate = new BuyFoodEventHandler(Xiaohong.BuyFood); 

    这是委托的声明方法, BuyFoodEventHandler(委托的方法);委托的方法必须要加上,因为委托的构造函数是不为空的。

    通过查阅和看视频,外加上自己的一下理解,渐渐的也了解了委托,慢慢来,不着急。Fighting.......









你可能感兴趣的:(C#委托(一))