C#主要运行而不公开

时间:2015-12-14 11:30:16

标签: c#

为什么Main不在C#中公开,在java中它给出了一个错误,如果我们没有main作为public,系统如何在C#中调用Main?

1 个答案:

答案 0 :(得分:-1)

来自source

  

如果您的方法是私有的或公开的,CLR并不介意。它   不会通过使用普通的C#代码来调用它。这是什么的   本机调用堆栈看起来如果您有兴趣:

00000000`0014ea10 00000642`7f67d4a2 0x642`80150142
00000000`0014ea90 00000642`7f5108f5 mscorwks!CallDescrWorker+0x82
00000000`0014eae0 00000642`7f522ff6 mscorwks!CallDescrWorkerWithHandler+0xe5
00000000`0014eb80 00000642`7f49a94b mscorwks!MethodDesc::CallDescr+0x306
00000000`0014edb0 00000642`7f474ae4 mscorwks!ClassLoader::RunMain+0x23f
00000000`0014f010 00000642`7f5efb1a mscorwks!Assembly::ExecuteMainMethod+0xbc
00000000`0014f300 00000642`7f467d97 mscorwks!SystemDomain::ExecuteMainMethod+0x492
00000000`0014f8d0 00000642`7f482c24 mscorwks!ExecuteEXE+0x47
     

顶部的地址是您的主要方法。