【发布时间】:2012-06-29 22:37:41
【问题描述】:
下面的这段代码让我对私有类的内部结构感到困惑。我可以看到很多关于这个错误的搜索结果,但下面的声音仍然很奇怪
namespace X
{
public class Program
{
public static XYZ sample1;
public static void Main(string[] args)
{
XYZ sample2 = new XYZ(); // OK (1)
sample1 = new XYZ(); // NOK (2)
...
}
}
private class XYZ
{
}
}
如果 XYZ 类是私有的,那么它在 (1) 中如何工作,但在 (2) 中却没有?
【问题讨论】:
-
这还能编译吗?即使您删除了 NOK 代码
-
在我的脑海中,我对其中任何一项工作感到惊讶。我什至不知道您可以拥有
private类而不是嵌套类。编辑:是的,当然它不能编译(在 LINQPad 中测试)。你能发布实际代码吗? -
stackoverflow.com/questions/4906546/… 也同意@ChrisSinclair
-
@V4Vendetta:是的,当我删除 (2) 和 sample1 声明时它会编译。
-
奇怪的非以下答案提到私有类将无法如上所示工作:(
标签: c#