2016-04-14 9 views
2

bestimmen Ich schrieb ein Programm, das zwei Hauptmethode hat. Und ich spezifizierte Einstiegspunkt mit Eingabeaufforderung.Kann ich meine eigene Einstiegspunktmethode für C#

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

csc Program.cs/main: Test

Well.Can I Einspeisepunkt Methode mit Eingabeaufforderung festzustellen?

zum Beispiel

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

Dann

csc Program.cs Eintrag/Programm :: newEntry()

Ist das möglich?

+0

Es muss eine statische Funktion namens "Main" AFAIK sein. –

+1

Ich glaube, du kannst es nicht tun. Einstiegspunkte werden durch das .NET-Framework definiert, das Main() in ConsoleApplications ist. –

+0

Stimmen Sie mit @LucasTrzesniewski überein, aber was ich wirklich frage, ist ... Warum müssten Sie das überhaupt tun? Ich meine Neugier ist eine Sache, aber ich frage mich, ob du das wirklich jemals brauchen würdest. – Transcendental

Antwort

1

Nein, der static Main() ist die einzige Anlaufstelle für C# und alle anderen Funktionen sollten Anruf sein daraus gemacht.

+0

Ich denke, du hast recht. Aber kannst du diesen Fall beweisen? Weil ich sicher sein will. MSIL Sprache haben diese Option für den Einstiegspunkt. Vielleicht csharp haben? Und wenn wir die eigene Einstiegspunktmethode nicht bestimmen können, warum? msil hat diese Option.Warum C# -Compiler nicht? Es ist natürlich nicht notwendig, aber das ist der einzige Grund? Warum MSIL braucht das aber csharp nicht? Ich hoffe, Sie verstehen meinen Standpunkt. – Cevizli

1

"Wenn ein Programm gestartet wird, sucht es nach einem Einstiegspunkt. Dies ist die Rolle der Main() -Methode. Tatsächlich beginnt ein Programm, das ein ausführbares Programm ist, mit dem Main (Die Methode funktioniert so, dass der Compiler zu Beginn nach einer Methode namens Main sucht, die, wenn sie nicht gefunden wird, einen Fehler erzeugt, der dann die Main() - Methode "

" eingibt

finden Sie in diesem Dokument

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