委托的使用

 

委托是设什么?


1.函数指针  指向函数的指针
2.类类型的一种 
    从使用的方式上,总是先定义一个委托类型,然后定义委托变量,然后执行委托指向的函数。
    

委托存在的形式?

1.匿名函数
匿名函数的好处是可以执行一段代码,可以灵活定义。

 public static void Test()
        {
            Action action =  delegate(){ MessageBox.Show("aa"); };
            if (action != null)
            {
                action();
            }
           
        }

2.事件处理
    winform,wpf 的事件处理都是使用委托的。
    public static void Test()
        {
            System.Windows.Controls.MenuItem menuItem = new System.Windows.Controls.MenuItem();

            menuItem.Click += delegate(object sender, RoutedEventArgs e) 
            { 
                if(sender is System.Windows.Controls.MenuItem)
                {
                    MessageBox.Show("aa");
                }
            };

        }
3.执行任务

 public static void Test()
        {
            Task.Factory.StartNew(delegate ()
            {
                MessageBox.Show("aa");
            }).ContinueWith(delegate (Task t1) {
                MessageBox.Show("bb");
            });

        }

4.执行线程
 public static void Test()
        {
            Thread thread = new Thread(new ThreadStart(delegate() {
                MessageBox.Show("aa");
            }));

            thread.Start();

        }


总结:

当委托类型作为参数时候,这个时候会有很大的灵活性。
对于委托的理解,最重要的是委托是一种特殊的类类型,有了这种类型,可以使程序设计有了更多的可能性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值