2016-04-14 5 views
2

Я написал программу, которая имеет два основных метода. И я указал точку входа с командной строкой.Могу ли я определить свой собственный метод точки входа для C#

class Program 
{ 
    static void Main() 
    { 
     Console.WriteLine("Test"); 
    } 
} 
class Test 
{ 
    static void Main() 
    { 
     Console.WriteLine("Test"); 
    } 
} 

CSC Program.cs/Основной: Тест

определить, Смогите метод точек входа с командной строкой?

, например

class Program 
{ 
    static void NewEntry() 
    { 
     Console.WriteLine("Test"); 
    } 
} 

Тогда

CSC Program.cs вход/программа :: NewEntry()

Возможно ли это?

+0

Должна быть статическая функция под названием 'Main' AFAIK. –

+1

Я считаю, что вы не можете этого сделать. Точки входа определяются платформой .NET, которая является Main() на ConsoleApplications. –

+0

Согласитесь с @LucasTrzesniewski, но я действительно удивляюсь. Почему бы вам даже это сделать? Я имею в виду, что любопытство - это одно, но мне интересно, действительно ли вам это понадобится. – Transcendental

ответ

1

порядка № static Main() является единственной точкой входа для C#, а все остальные функции должны быть вызов из него.

+0

Я думаю, что вы правы. Но вы можете доказать это? Потому что я хочу быть уверенным. MSIL язык есть этот вариант для входа точка.Майбы csharp придется? И если мы не можем определить собственный метод точки входа, почему? msil имеет этот параметр. У компилятора C# нет? это не обязательно, но это единственная причина? Почему MSIL это нужно, но csharp нет? Надеюсь, вы понимаете мою точку зрения. – Cevizli

1

«Когда запускается программа, она ищет точку входа. Это роль метода Main(). На самом деле, программа, являющаяся исполняемой программой, начинается и останавливается с помощью Main()). Как это работает, вначале компилятор ищет метод Main. Если он его не находит, он выдает ошибку. Если он находит это, он вводит метод Main() «

См этот документ

http://www.functionx.com/csharp2/topics/main.htm