黑马程序员技术交流社区

标题: c#中委托是啥??? [打印本页]

作者: 十月April    时间: 2014-1-22 17:56
标题: c#中委托是啥???
本帖最后由 十月April 于 2014-1-22 21:32 编辑

:'(求解释下,这个应该怎么理解呢?
作者: 许庭洲    时间: 2014-1-22 18:00
1. 委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。
2. 委托方法的调用可以像其他任何方法一样,具有参数和返回值,如下面的示例所示:
    public delegate int PerformCalculation(int x, int y);
3. 委托类似于 C++ 函数指针,但它们是类型安全的。

作者: 马山闪    时间: 2014-1-22 20:03
本帖最后由 马山闪 于 2014-1-22 20:05 编辑

我 委托 你 给我办个事。

比如说 我需要人帮我 买瓶水。
也就是只要来个人帮我买水 就可以了,我不需要知道是张三还是李四给我买的。

所以在Button类里面提供了Click事件,它只要是一个函数void 其中2个参数(Object,eventArgs)就是可以,不管这个函数叫什么名字,不管这个函数怎么实现的。只要它能满足我委托的要求就可以了委托和C++中的函数指针差不多..this.Button1.Click += new System.EventHandler(this.Button1_Click);
这样就是把Button1.Click这个委托指向了函数this.Button1_Click
这样可以通过委托来调用这个函数了.
还可以改变指向的函数.很灵活.

委托的好处就是可以动态的改变调的函数

作者: j6495345    时间: 2014-1-22 23:58
委托应该就是创建一段新的程序,然后让这段程序专门负责一件事情,然后每次需要这个事情了。就去找这段代码。。(仅供参考)




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2