조건부 컴파일 개요
업데이트: 2007년 11월
조건부 컴파일을 사용하면 코드의 특정 부분만 선택하여 컴파일하고 나머지 부분은 무시할 수 있습니다. 예를 들어 동일한 프로그래밍 작업을 서로 다른 방식으로 수행하여 각각의 속도를 비교하는 디버깅 문을 작성하는 경우, 또는 특정 응용 프로그램을 여러 언어로 지역화하는 경우가 있습니다. 조건부 컴파일 문은 런타임에서가 아니라 컴파일 타임에 실행되도록 만들어졌습니다.
#Const 지시문을 사용하여 코드에서 조건부 컴파일러 상수를 선언하고, #If...Then...#Else 지시문을 사용하여 조건부로 컴파일할 코드 블록을 나타냅니다. 예를 들어, 동일한 소스 코드를 사용하여 프랑스어 및 독일어 버전의 동일한 응용 프로그램을 만들려면 미리 정의된 상수 FrenchVersion과 GermanVersion을 사용하여 플랫폼별 코드 세그먼트를 #If...Then 문에 포함합니다. 다음 예제는 그 방법을 보여 줍니다.
#If FrenchVersion Then
' <code specific to the French language version>.
#ElseIf GermanVersion Then
' <code specific to the German language version>.
#Else
' <code specific to other versions>.
#End If
컴파일 타임에 FrenchVersion 상수 값을 True로 설정하면 프랑스어 버전의 조건부 코드가 컴파일되고 GermanVersion 상수 값을 True로 설정하면 독일어 버전이 컴파일됩니다. True로 설정된 상수 값이 없으면 마지막 Else 블록의 코드가 실행됩니다.
참고: |
---|
코드가 현재 분기의 일부가 아닌 경우에는 코드를 편집하고 조건부 컴파일 지시문을 사용할 때 자동 완성이 작동하지 않습니다. |