열거형 및 이름 한정(Visual Basic)

일반적으로 열거형의 멤버를 참조할 때는 멤버 이름을 열거형 이름으로 한정해야 합니다. 예를 들어 열거형의 Days 멤버를 Sunday 참조하려면 다음 구문을 사용합니다.

X = Days.Sunday

Imports 문 사용

다음 예제와 같이 코드의 네임스페이스 선언 섹션에 문을 추가하여 Imports 정규화된 이름을 사용하지 않도록 할 수 있습니다.

Imports WindowsApplication1.Form1.Days
Imports WindowsApplication1.Form1.WorkDays

문은 Imports 참조된 프로젝트 및 어셈블리와 문이 표시되는 모듈과 동일한 프로젝트 내에서 네임스페이스 이름을 가져옵니다. 이 문이 추가되면 다음 예제와 같이 자격 없이 열거형 멤버를 참조할 수 있습니다.

X = Sunday

관련된 상수 집합을 열거형으로 구성하면 다른 컨텍스트에서 동일한 상수 이름을 사용할 수 있습니다. 예를 들어 및 WorkDays 열거형의 평일 상수에 Days 동일한 이름을 사용할 수 있습니다. 열거형과 Imports 함께 문을 사용하는 경우 모호한 참조를 방지하기 위해 주의해야 합니다. 다음 예제를 살펴보겠습니다.

Imports WindowsApplication1.Form1.Days
Imports WindowsApplication1.Form1.WorkDays
Public Sub New()
    ' Insert code to implement constructor.
    X = Monday
End Sub

Monday 가 열거형과 Workdays 열거형 모두 Days 의 멤버라고 가정하면 이 코드는 컴파일러 오류를 생성합니다. 개별 상수를 참조할 때 모호한 참조를 방지하려면 상수 이름을 열거형으로 한정합니다. 다음 코드는 SaturdayWorkDays 열거형의 Days 상수를 참조합니다.

X = Days.Saturday
Y = WorkDays.Saturday

추가 정보