隐藏外部名称空间中的函数

时间:2010-09-21 10:26:21

标签: c# encapsulation

我正在构建一个游戏并拥有几组命名空间。一个叫做“引擎”,另一个叫做“游戏”。我只希望Engine能够看到几个函数和变量。我需要做什么来隐藏游戏命名空间中的某些功能(而不是整个类)。

2 个答案:

答案 0 :(得分:7)

C#没有任何引用命名空间的访问修饰符。

相反,也许您应该将类​​型放入不同的程序集 - 然后使用internal访问修饰符来限制对声明类型或成员的程序集的访问。

此外,如果您想要一种仅与另一种类型相关的类型,您可以将其嵌套并将其设为私有:

internal class Outer
{
    // Only the Outer class knows about Nested.
    private class Nested
    {
    }
}

答案 1 :(得分:0)