why main method in c# is always placed inside the

2019-04-05 02:52发布

问题:

Why we put main() method always inside the class in C# while in c++ it always placed outside of the class.

回答1:

For historical reasons. C++ evolved from C, which had a global main() function. C# is much younger and was designed from scratch. One of the design features of C# is the absence of global functions, so the main function has to belong to a class.



回答2:

The C++ language designers followed the lead of C and so the main function is a plain function.

The C# language designers made the choice, when designing the language, that all methods must be part of classes.



回答3:

Because in .NET you can place methods only inside types. You cannot have them floating around in the empty space. C++ has its legacy from C which is not an OOP language so you could define functions anywhere.



回答4:

You cannot place method outside class/struct in C#. Each method must be in class/struct



回答5:

It is a convention. Which is in line with Java (also follows the semantic of having a method inside class).



回答6:

C# is complete object oriented language where everything is considered as objects. Hence, Main() is kept inside class.



标签: c# c++ oop main