2013-07-12 10 views

risposta

17

È possibile avere più di un metodo principale, è possibile specificare quale utilizzare come punto di ingresso per l'applicazione il compilatore .. Visualizza this link per maggiori dettagli

Esempio:

using System; 
using System.Collections.Generic; 
using System.Text; 


    namespace Multiple_MainClasses 
    { 
     class A 
     { 
      static void Main(string[] args) 
      { 
       Console.WriteLine("I am from Class A"); 
       Console.ReadLine(); 
      } 
     } 
     class B 
     { 
      static void Main(string[] args) 
      { 

       Console.WriteLine("I am from Class B"); 
       Console.ReadLine(); 
      } 
     } 
    } 

Quando verrà eseguito questo codice, si otterrà errore di compilazione. Per risolvere Vai al progetto proprietà in Esplora soluzioni o premere Ctrl + Alt + L, vai alla scheda applicazione e Seleziona classe con il metodo che si vuole eseguire, come illustrato di seguito:

enter image description here

+0

E se avessimo due metodi principali nella stessa classe? come .. main() e main (string [] args) –

+0

@TusharKukreti Questo è un errore di compilazione. Il metodo Main viene considerato come un punto di ingresso solo se la firma corrisponde a uno dei seguenti 2 e il metodo è statico 1. Principale (stringa []) 2. Principale() – Jaguar

3

Il metodo principale è il punto di accesso all'applicazione. Basato su articoli forniti da altri, è sintatticamente valido per definire più metodi Main, ma devi selezionare un singolo metodo principale quando esegui la tua app. Penso che ha più senso per creare una sola funzione principale e renderlo flessibile, utilizzando argomenti della riga di comando, ecc

+0

-1 È possibile avere più alimentazione, quindi questa risposta ha informazioni false. – Katu

+0

L'articolo che hai aggiunto non consente due reti contemporaneamente. Sembra un trucco del compilatore che ti consenta di definirne due, ma di incorporarne solo uno in fase di compilazione. Non vedo che abbia due punti di accesso nella tua app – TGH

+0

Potresti avere un numero di accessi pari a quello delle tue lezioni. 'voti -;' – ChiefTwoPencils

4

Sì - è possibile specificare personalizzato punto di ingresso se si dispone di più metodi Main. csc /main contiene le informazioni su di esso:

Questa opzione specifica la classe che contiene il punto di ingresso al programma, se più di una classe contiene un metodo principale.

csc MyClssesWithMain.cs /main:OneOfTheClasses 

Nota: Main metodi devono essere in classi separate come non si può avere 2 metodi con firma identica nella stessa classe.

Problemi correlati