0

范围protected internal是同一个程序集,或者是另一个程序集中的任何派生类。那么为什么受保护的内部类不能派生?

示例代码:

 protected internal class AbsClass
    {
        int m = 50;
        public int am = 5;     

        public void nonAbsfn()
        {
            Console.WriteLine(m + am);
        }
    }

    class TestAbstract : AbsClass
    {


    }
4

2 回答 2

5

一个类只能protected internal是内部类。
否则,一个类只能是publicor internal

要修复您的编译错误,请将类设为publicinternal。您得到的错误与派生类无关TestAbstract

于 2013-06-05T07:29:53.157 回答
0

根据MSDN 文档

类型或成员可以被声明它的程序集中的任何代码访问,也可以从另一个程序集中的派生类中访问。来自另一个程序集的访问必须在派生自声明受保护内部元素的类的类声明中进行,并且必须通过派生类类型的实例进行。

所以你应该能够做到。你可以发布一些你的代码吗?

于 2013-06-05T07:29:04.037 回答