访问与嵌套类同名的外部类

时间:2019-01-04 21:01:00

标签: c# inner-classes

很抱歉,我没有找到答案。
我目前处于如下所示的情况。我希望它会引发错误,但没有。
“外部”内部的变量称为“内部”,是私有嵌套类Outer.Inner的实例。我想知道如何访问非嵌套的内部实例。
可以通过使用不同的名称空间来完成此操作,但是还有其他方法吗?

public class Outer {
    private Inner inner = new Inner(); // This is the Outer.Inner class

    private class Inner { }
}

public class Inner { }

2 个答案:

答案 0 :(得分:1)

这似乎很好。

我在类名之前使用了命名空间。

namespace Example
{
    public class Outer
    {
        private Example.Inner inner = new Example.Inner();

        private class Inner { }
    }

    public class Inner { }
}

答案 1 :(得分:1)

如果您不想将其包装在名称空间中,则可以使用global::来引用全局名称空间中的类型:

public class Outer
{
    private global::Inner inner = new global::Inner(); 
    private class Inner
    {
    }
}

public class Inner
{
}