다음을 통해 공유


방법: 선언된 요소 이름 한정

업데이트: 2007년 11월

코드에서 선언 요소를 참조할 경우 Visual Basic 컴파일러에서는 참조 이름을 그에 해당하는 선언과 일치시켜야 합니다. 요소가 코드 외부에 정의되어 있거나 같은 이름의 요소가 둘 이상 선언된 경우 컴파일러에서 가능한 모든 모호성을 해결하거나 해당 요소를 찾을 수 있도록 이름을 한정해야 합니다.

소스 문의 이름 앞에 대상 요소가 정의된 위치에 대한 식별 정보를 추가하면 이름이 한정됩니다. 이 정보를 한정 문자열이라고 합니다. 한정 문자열에는 하나 이상의 네임스페이스와 모듈, 클래스 또는 구조체 이름이 포함될 수 있습니다.

한정 문자열은 대상 요소가 들어 있는 모듈, 클래스 또는 구조체를 명확하게 지정해야 합니다. 또한 이 컨테이너는 다른 포함 요소(일반적으로 네임스페이스)에 포함되어 있을 수 있습니다. 따라서 한정 문자열에 여러 개의 포함 요소를 추가해야 할 수 있습니다.

이름을 한정하여 선언된 요소에 액세스하려면

  1. 요소가 정의된 위치를 확인합니다. 여기에는 네임스페이스 또는 네임스페이스의 계층 구조가 포함될 수 있습니다. 요소는 최하위 수준 네임스페이스 내에서 모듈, 클래스 또는 구조체에 포함되어야 합니다.

    ' Assume the following hierarchy exists outside your code.
    Namespace outerSpace
        Namespace innerSpace
            Module holdsTotals
                Public Structure totals
                    Public thisTotal As Integer
                    Public Shared grandTotal As Long
                End Structure
            End Module
        End Namespace
    End Namespace
    
  2. 대상 요소의 위치를 기준으로 한정 경로를 확인합니다. 최상위 수준 네임스페이스에서 시작하여 최하위 수준 네임스페이스로 진행하고 대상 요소가 들어 있는 모듈, 클래스 또는 구조체로 끝냅니다. 경로의 각 요소에는 그 다음에 나오는 요소가 포함되어 있어야 합니다.

    outerSpace → innerSpace → holdsTotals → totals

  3. 대상 요소에 대한 한정 문자열을 준비합니다. 경로의 모든 요소 뒤에 마침표(.)를 추가합니다. 응용 프로그램에서 한정 문자열의 모든 요소에 액세스할 수 있어야 합니다.

    outerSpace.innerSpace.holdsTotals.totals.
    
  4. 대상 요소를 참조하는 식 또는 대입문을 일반적인 방식으로 작성합니다.

    grandTotal = 9000
    
  5. 대상 요소 이름 앞에 한정 문자열을 추가합니다. 이 이름은 요소가 들어 있는 모듈, 클래스 또는 구조체 뒤의 마침표(.) 바로 뒤에 와야 합니다.

    ' Assume the following module is part of your code.
    Module accessGrandTotal
        Public Sub setGrandTotal()
            outerSpace.innerSpace.holdsTotals.totals.grandTotal = 9000
        End Sub
    End Module
    
  6. 컴파일러에서는 한정 문자열을 사용하여 대상 요소 참조와 일치시킬 수 있는 명확하고 모호하지 않은 선언을 찾습니다.

참고 항목

작업

방법: 이름이 같은 두 요소 구별

방법: 이름이 같은 변수 숨기기

방법: 상속된 변수 숨기기

방법: 파생 클래스에 의해 숨겨진 변수에 액세스

개념

선언 요소의 특징

여러 변수의 이름이 같은 경우의 참조 확인

Visual Basic의 선언문

기타 리소스

선언된 요소 참조