背景:                 
[本书目录] [图书首页] [本书讨论区]  
链接地址:http://www.17xie.com/read-58503.html    注册17xie 一起来写书 实现您的出书梦想!

7.2  委托推断

C# 2.0用委托推断扩展了委托的语法。只要需要委托实例,就可以只传送地址的名称。前面的示例用GetAString委托的一个新实例初始化了GetAString类型的变量firstStringMethod:

GetAString firstStringMethod = new GetAString(x.ToString);

只要用变量x把方法名传送给变量firstStringMethod,就可以编写出作用相同的代码:

GetAString firstStringMethod = x.ToString;

C#编译器创建的代码是一样的。编译器会用firstStringMethod检测需要的委托类型,因此创建GetAString委托类型的一个实例,用对象x把方法的地址传送给构造函数。

注意:

不能调用x.ToString()方法,把它传送给委托变量。调用x.ToString()方法会返回一个不能赋予委托变量的字符串对象。只能把方法的地址赋予委托变量。

委托推断可以在需要委托实例的任何地方使用。委托推断也可以用于事件,因为事件基于委托(参见本章后面的内容)。


字数:504    最后更新:7个月以前 [04-10 21:24]happyskynet 修改
本页编辑者:happyskynet  
[前一页]:第7章 委托和事件  [后一页]:7.3 匿名方法
[在本页中加入书签] [收藏本书] [推荐本书]
  17xie论坛 > 本书讨论区 > 本页评论   (共0条)
发表评论

用户名称 匿名发表
评论内容
验证码

关于我们 | 版权声明 | 免责声明 | 诚聘英才 | 联系我们 | 合作伙伴 | 友情链接 | 广告合作 | 提交意见
Copyright © 2007 17xie.com 互联网协同写书平台 京ICP备08002671号