2012-02-14 3 views

답변

1

컴파일러 보인다. Main()string[] 인수없이 선언 될 수 있습니다. Main() 기능을 가진 여러 클래스가있는 경우에만 프로젝트 설정을 구체적으로 설정하면됩니다.

Here's MSDN의 자세한 답변입니다.

+0

언급 된 URL을 보았지만 여러 개의 진입 점이있을 때이를 나타냅니다. 하나의 진입 점이있는 경우 런타임에서 Main 메서드가 포함 된 클래스를 어떻게 감지합니까? 모든 수업을 검색합니까 (심지어 1000 개의 수업이 있습니까)? – Syed

+0

예, 컴파일러는 어쨌든 그렇게합니다. 프로젝트를 컴파일하고 출력 바이너리를 빌드하려면 모든 심볼의 심볼 테이블을 작성해야합니다. 테이블에서 Main() 메서드를 찾는 것은 컴파일러에서 사소한 문제입니다 (컴파일러가 이미 그 시간까지 많은 양의 데이터를 준비했기 때문에 수천 개의 클래스를 검색하는 것은 매우 빠릅니다). – xxbbcc

+0

의견을 보내 주셔서 감사합니다. 답변을 설명하는 다른 유용한 링크 (MSDN 링크 제외)가 유용 할 것입니다. – Syed

1

진입 점은 프로젝트 설정에서 구성 할 수 있습니다.

static void Main(string[])

또는

static int Main(string[])

이 진입 점을 결정하기 위해

+4

여러 개의 진입 점이 있으면 _ 구성해야합니다. 그렇지 않으면 프로젝트가 컴파일되지 않습니다. –

+0

@AustinSalonen 단, Main 메서드가 하나만있는 경우 의견을 보내 주셔서 감사합니다. – Syed

+0

'static void Main'을 검색 할 가능성이 있습니다. –

관련 문제