C#中代表DELEGATE的作用是什么?

 我来答
百度网友628d0d7e
高粉答主

2018-01-09 · 说的都是干货,快来关注
知道大有可为答主
回答量:300
采纳率:100%
帮助的人:11.2万
展开全部

delegate是C#中的一种类型,它实际上是一个能够持有对某个方法的引用的类。

与其它的类不同,delegate类能够拥有一个签名(signature),并且它只能持有与它的签名相匹配的方法的引用。

上面的定义解释了一个delegate的声明定义了一个reference type, 而这个reference type是用来将一个方法利用一个指定的形式压缩起来。一个delegate的实例压缩一个静态或者一个实例方法。Delegates和C++中的功能指针很相似。然而,不同的是,delegate是安全的,并且是Type-safe。

C#中的委托

1. 委托类似与 C或C++中的函数指针,但委托是 面向对象的,并且是类型安全的

2. 委托 就相对与 一类方法 (即方法类,或者方法接口)

而这一类方法都具有相同的 修饰符、形参以及 返回值类型

委托,既是方法:

声明委托的方式如下:在修饰符后加上 delegate ['dɛlɪɡət]关键字

从格式上看,它与方法的声明极为相似,就是多了个 delegate关键字而已

表示声明了一类,修饰符为public、一个string类型形参的、没有返回值的方法

但委托不是普通的方法,因为它也是类,

所以委托只能声明,而不能定义,如不能这样写:

实例化委托,调用委托:

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式