C# 零散知识 扩展方法 类型约束_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > C# 零散知识 扩展方法 类型约束

C# 零散知识 扩展方法 类型约束

 2013/8/5 19:09:10  李晋  博客园  我要评论(0)
  • 摘要:今天看到这么一段代码,我看下面调用了NotifyPropertyChanged定义了两个参数,但是调用的时候只写了一个参数.后来查了下,原来这个是扩展方法的用法,就是说给T扩展了一个方法NotifyPropertyChanged,我看官方文档说着样做的好处是扩展方法使您能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型,其实他是在代码中使用实例方法语法调用但是,编译器生成的中间语言(IL)会将代码转换为对静态方法的调用
  • 标签:C# 方法 约束

  今天看到这么一段代码,我看下面调用了NotifyPropertyChanged定义了两个参数,但是调用的时候只写了一个参数.后来查了下,原来这个是扩展方法的用法,

就是说给T扩展了一个方法NotifyPropertyChanged,我看官方文档说着样做的好处是扩展方法使您能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型,其实他是class="sentence" data-guid="92c2e1aee507b821261cf657c4852ab9" data-source="In your code you invoke the extension method with instance method syntax.">在代码中使用实例方法语法调用 但是,编译器生成的中间语言 (IL) 会将代码转换为对静态方法的调用.需要注意类得是静态的,方法也是静态的.   后面那个where,用于指定类型约束,这个是基类约束,必须将PropertyChangeBase类作为基类.

上一篇: WP开发者:3万下载量仅赚100元 国内用户720万 下一篇: 没有下一篇了!
发表评论
用户名: 匿名