关于委托

    在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等。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值