Czy jest możliwe stosowanie więcej niż jednej metody main()
(z tymi samymi parametrami) w aplikacji konsoli C#? Jeśli tak to jak?Czy w programie C# można mieć więcej niż jedną metodę main()?
Odpowiedz
Możesz mieć więcej niż jedną główną metodę, możesz określić, które z nich będzie używane jako punkt wejścia dla aplikacji. Twój kompilator .. Zobacz this odnośnik więcej szczegółów
Przykład:
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();
}
}
}
Kiedy uruchomić ten kod, pojawi się błąd kompilacji. Aby rozwiązać przejść do Właściwości projektu w Solution Explorer lub naciśnij Ctrl + Alt + L, przejdź do zakładki aplikacji i wybierz klasy z metody, które chcesz wykonać, jak pokazano poniżej:
Co jeśli mamy dwie główne metody w tej samej klasie? jak .. main() i main (string [] args) –
@TusharKukreti To jest błąd kompilacji. Metoda główna jest traktowana jako punkt wejścia tylko wtedy, gdy podpis jest zgodny z dowolnym z poniższych 2, a metoda jest statyczna 1. Główna (Ciąg []) 2. Główna() – Jaguar
Główną metodą jest punkt wejścia do aplikacji. W oparciu o artykuły dostarczone przez innych, jest to syntaktycznie poprawne, aby zdefiniować wiele głównych metod, ale musisz wybrać jedną główną metodę podczas uruchamiania aplikacji. Wydaje mi się, że bardziej sensowne jest utworzenie jednej głównej funkcji i uczynienie jej elastyczną poprzez użycie argumentów wiersza poleceń itd.
-1 Możliwe jest posiadanie wielu sieci, więc ta odpowiedź zawiera fałszywe informacje. – Katu
Dodany artykuł nie zezwala na dwie sieci w tym samym czasie. Wydaje się, że jest to sztuczka kompilatora umożliwiająca zdefiniowanie dwóch, ale tylko uwzględnienie ich w czasie kompilacji. Nie postrzegam tego jako posiadającego dwa punkty wejścia do twojej aplikacji. – TGH
Możesz mieć tylu sił w sieci, ile masz zajęć. 'votes -;' – ChiefTwoPencils
Tak - można określić niestandardowy punkt wejścia, jeśli masz wiele głównych metod. csc /main zawiera informacje na ten temat:
Ta opcja określa klasę zawierającą punkt wejścia do programu, jeśli więcej niż jedna klasa zawiera metodę Główną.
csc MyClssesWithMain.cs /main:OneOfTheClasses
Uwaga: Main
metody muszą znajdować się w oddzielnych klasach, jak nie można mieć 2 metody z identycznego podpisu w tej samej klasie.
- 1. Czy można mieć więcej niż jedną aktywność programu uruchamiającego?
- 2. Czy można określić więcej niż jedną wskazówkę dotyczącą parametru?
- 3. Eksportuj więcej niż jedną zmienną w ES6?
- 4. split string z więcej niż jedną Char w C#
- 5. Backbone relacyjny - nie więcej niż jedną instancję ,,,
- 6. Czy można ustanowić więcej niż jedną komunikację bluetooth w systemie Android?
- 7. Dartlang czekaj więcej niż jedną przyszłość
- 8. Czy w Ruby można mieć jedną linię dla każdego bloku?
- 9. Czy mogę ograniczyć metodę ogólną do więcej niż jednego interfejsu?
- 10. Kontroler Api deklarujący więcej niż jedną instrukcję Pobierz
- 11. Czy mogę mieć więcej niż 1 instancję "mongos"?
- 12. Qt: Jak zorganizować test jednostek z więcej niż jedną klasą?
- 13. Czy w systemie Android można mieć więcej niż jeden plik zasobów ciągów znaków?
- 14. Utwórz więcej niż jedną instancję eshell w emacs
- 15. Czy można wyświetlić więcej niż 65536 wierszy w programie Excel 2007?
- 16. Android tabela z więcej niż jedną kolumną jak iOS collectionView
- 17. Czy można zainstalować więcej niż jedną ghc i zmienić nazwę binarną każdej instalacji?
- 18. sparql: jak GROUP BY więcej niż jedną kolumnę
- 19. Jak zwrócić więcej niż jedną wartość z funkcji w Pythonie?
- 20. queryselectorAll - znajdź element z więcej niż jedną pasującą klasą
- 21. Znajdź węzły neo4j z więcej niż jedną relacją przychodzącą
- 22. Regex, aby zablokować więcej niż jedną myślnik kolejno
- 23. Czy mogę wybrać więcej niż jedną wartość dla atrybutu w XAML?
- 24. Jak mogę mieć więcej niż 9 obszarów roboczych w Xmonad?
- 25. Czy w Sitemesh można dekorować więcej niż jeden raz?
- 26. Czy można utworzyć projekt gradacji z więcej niż 2 poziomami?
- 27. Przydział destrukturyzacji ES6 z więcej niż jedną zmienną typu
- 28. W programie C/C++, w jaki sposób system (Windows, Linux, Mac OS X) wywołuje funkcję main()
- 29. Proste pytanie Linq: Jak wybrać więcej niż jedną kolumnę?
- 30. Połączyć dwie lub więcej przestrzeni nazw C++ w jedną
Dlaczego chcesz mieć więcej niż jeden główny? –
Spójrz na ten artykuł http://raviranjankr.wordpress.com/2011/05/20/multiple-main-method-in-c/ – mck
Co do cholery zrobi ten drugi? – Mehrdad