class MyClass
{
**private** delegate void MyDelegate(); //error: MyDelegate is less accessible than property Del
private MyDelegate del;
public MyDelegate Del
{
get { return this.del; }
set { this.del = value; }
}
}
更改为公共修复程序,但我想更详细地了解原因。
最佳答案
MyDelegate
是公共财产Del
签名的一部分。
如果某些东西消耗了Del
的返回值,则肯定需要定义要返回的类型。
换句话说,如果某个其他类具有MyClass
的实例,例如:
MyClass myclass = new MyClass();
MyDelegate del = myclass.Del;
除非
MyDelegate
是该类已知的类型,否则将不可能。