CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

请问 委托(delegate) 有什么用途呢? 谢谢

楼主zhangsu1023(zs)2006-05-03 20:50:08 在 .NET技术 / C# 提问

请问     委托(delegate)   有什么用途呢?     谢谢  
  原来c++好像没见过  
  可能是自己学得太少    
  谢谢指教 问题点数:10、回复次数:14Top

1 楼fangxinggood(JustACoder)回复于 2006-05-03 20:52:44 得分 0

相当于C++中的函数指针~~,   当你设计的方法中,需要调用别的方法,但是调用的方法名还有可能发生变化,那么就可以使用代理(委托)。通过参数传递运行时需要调用的方法。Top

2 楼kugou123(酷狗)(彪悍的人生,不需要解释 www.xiaozhou.net)回复于 2006-05-03 21:30:51 得分 0

和C++的函数指针相似。可以用来在方法中传递方法Top

3 楼JavaDianNet(如何做...如何做的更好...)回复于 2006-05-03 21:58:11 得分 0

现在要为button1编写事件处理的代码  
   
  假设需求:button1的事件处理代码有可能是f1(),有可能是f2()  
  思路:则根据情况为button.OnClick   赋值f1()   ,   f2()   ...  
  如何做到?  
  需要一种机制:通过"代表函数的变量",即委托..Top

4 楼namhyuk(namhyuk)回复于 2006-05-04 04:39:22 得分 0

委托还有一个实用的功能:支持异步执行。Top

5 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2006-05-04 08:03:47 得分 0

委托是通过反射来执行方法的。相当于   方法.Invoke(对象,参数)。  
   
  并且委托不是方法,而是将方法作为自己的一个属性。显然它还有很多自己的属性、方法。  
   
  委托是强类型的。你能够定义一个委托方法的参数签名,然后胡乱给一个不同类型参数签名的方法吗?不能。  
   
  委托支持异步操作,自动使用系统线程池、并且返回线程的各种状态。  
   
  Event进一步扩展了委托。它不管理一堆委托,并且轮流调用各个委托。  
   
  委托不是C++中的指针。委托是准确的、面向对象的、接口非常具体的概念,不是一个危险的、“什么都能代表又不能保证其基本的接口协议”的指针Top

6 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2006-05-04 08:04:39 得分 5

它不管理一堆委托     -->     它不仅管理一堆委托Top

7 楼ahniyilin(决非偶然)回复于 2006-05-04 11:47:37 得分 0

呵呵!有什么用!我不清楚!  
  但最近两天在进行窗体间传值的时候用到了委托!  
  要自己写事件!  
  必须用到!Top

8 楼xhncmec(小王)回复于 2006-05-04 12:01:40 得分 0

在MFC中,是用映射,用宏来实现的。Top

9 楼boblaile(爱在13月32)回复于 2006-05-04 21:40:48 得分 0

看了半天一头的水Top

10 楼diandian82(点点(nothing))回复于 2006-05-04 21:56:26 得分 0

先看看别人的代码,知道怎么用就行了!以后再理解Top

11 楼luby(轻疯[在岁月无声的消逝里,轻轻的...我疯了。])回复于 2006-05-04 22:57:13 得分 0

这玩意的确有点玄。。。Top

12 楼xhncmec(小王)回复于 2006-05-05 12:02:14 得分 5

例如,控件button接收到的单击click消息,由委托负责转至主窗口中执行(通常是函数OnClick()),这种机制与MFC中的消息映射非常相像。委托有两个特点:监听、本身是对象。Top

13 楼pollini(nadir.O_o)回复于 2006-05-07 19:02:31 得分 0

我的理解是在后台调用前台的方法。作用就是封装吧。Top

14 楼chenanlin1981(小黑)回复于 2006-05-27 16:33:04 得分 0

sp1234讲得很透彻!Top

相关问题

关键词

得分解答快速导航

  • 帖主:zhangsu1023
  • sp1234
  • xhncmec

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo