关于委托

原创 2006年06月08日 22:53:00
    在C#中使用一个类时,有两个部分。首先需要定义这个类,即告诉编译器这个类由什么字段和方法组成。然后(除非使用的是静态方法)实例化类,即创建类的一个对象。当我们想要使用委托时,也需要经过这两个步骤。对于委托,定义它就是告诉编译器这种类型代表了哪种类型的方法,然后创建该委托的一个或多个实例。
    定义委托的方法如下:
    delegate void VoidOperation(uint X);
    在这个例子中,定义了一个委托VoidOperation,并指定该委托的每个实例都包含一个方法的细节。该方法带有一个unit的参数,并返回void。理解委托的一个要点是它们的类型安全性非查高。在定义委托时,必须给出它所代表的方法的全部细节。
    提示:
    理解委托的一种好方式是把委托当作给方法的特征指定一个名称。
    假定,要定义一个委托TwoLongsOp,该委托代表的函数有两个long参数,返回一个double,可以编写如下的代码:
    delegate double TwoLongsOp(long L1,long L2);
    或者定义一个委托,它代表一个不带参数的方法,返回一个string,则可以编写如下代码:
    delegate string GetAString();
    其语法类似于方法的定义,但没有方法体,定义的前面要加上关键字delegate。因为定义委托基本上是定义一个新类,所以可以在定义类的任何地方定义委托,既可以在另一个类的内部定义,也可以在任何类的外部定义,还可以在命名空间中把委托定义为顶层对象。根据定义的可见性,可以在委托定义上添加一般的访问修饰符:public、private和protected等。
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C#委托实例

  • 2015-08-07 18:01
  • 33KB
  • 下载

异步委托四步走

异步委托四步走第一步:简单的异步委托public void RunAsyn() { Action action = ValidateSms; action.BeginInvoke("h...

C# 中的委托和事件

  • 2015-09-22 16:41
  • 215KB
  • 下载

ios两视图间委托(delegate)传值

现有两个视图(ViewController,ViewController1),从ViewController中带参数跳转到ViewController1,在ViewController1选中数据后带有...
  • f10_s
  • f10_s
  • 2014-10-08 15:26
  • 958

多线程加委托实现互动

  • 2015-09-17 15:37
  • 20KB
  • 下载

C#实验三 委托

  • 2015-01-01 14:41
  • 160KB
  • 下载

静态函数 抽象类 覆盖-重写-重载 委托-事件-匿名函数 密封 Lambda表达式

下面叙述以C#语言为例,其它语言也有参考价值 1、静态函数    在类中定义静态函数,就不用实例化类了,直接用类名就可以访问了。在定义类的方法时,如果该方法与类的成员变量没有任何关系(也就是根本不会使...

.NET 委托应用范例

  • 2016-04-06 17:24
  • 80KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)