大佬教程收集整理的这篇文章主要介绍了Mono C#Compiler和MS C#Compiler关于Scope的区别,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
public class Base { public EventHandler Click {get;set;} public Base(EventHandler clickHandler) { this.Click = clickHandler; } } public class Derived: Base { public Derived(): base((sender,E) => Execute()) { } private void Execute() { } }
代码在MonoDevelop 3.0上编译得很好,但在VS2010中给出了一个错误:
非静态字段,方法或属性“Base.Execute”需要对象引用
基本上,它归结为这样一个事实:当从派生类的构造函数调用基类的构造函数时,MS的C#编译器不允许访问派生类的方法/属性等.如何?
C# Specification,第10.11.1节构造函数初始值设定项:
以上是大佬教程为你收集整理的Mono C#Compiler和MS C#Compiler关于Scope的区别全部内容,希望文章能够帮你解决Mono C#Compiler和MS C#Compiler关于Scope的区别所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。