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.