방법: 이름이 같은 두 요소 구별
업데이트: 2007년 11월
응용 프로그램에서 이름이 같은 여러 요소에 액세스할 수 있는 경우 Visual Basic 컴파일러에서 참조를 사용자가 사용하려는 특정 요소와 대응시킬 수 있도록 이름을 한정할 수 있습니다. 자세한 내용은 방법: 선언된 요소 이름 한정을 참조하십시오.
예제
다음 예제에서는 같은 이름의 다른 포함 요소에 들어 있는 같은 이름의 변수 두 개를 보여 줍니다. 예제에서 이 두 변수는 단순히 코드 길이를 줄이기 위해 Shared로 선언되어 있습니다.
Namespace space1
Public Class innerClass
' String showMe is declared Shared to facilitate reference.
Public Shared showMe As String = "Shared string 1"
End Class
End Namespace
Namespace space2
Public Class innerClass
' String showMe is declared Shared to facilitate reference.
Public Shared showMe As String = "Shared string 2"
End Class
End Namespace
Public Module callShowMe
Public Sub showStrings()
MsgBox("From space1: " & space1.innerClass.showMe _
& vbCrLf & "From space2: " & space2.innerClass.showMe)
End Sub
End Module
앞의 예제에서는 이름이 showMe이고 각각 innerClass라는 클래스에 들어 있는 두 개의 변수를 선언합니다. 두 변수의 포함 요소 이름이 같기 때문에 호출 코드에서는 showMe 변수를 해당 컨테이너인 innerClass로 한정하고 innerClass도 해당 컨테이너인 space1 또는 space2로 한정해야 합니다. 각 한정 문자열은 고유한 선언에 대한 명확한 경로를 제공하므로 Visual Basic 컴파일러에서 각 참조를 확인할 수 있습니다.
강력한 프로그래밍
같은 이름으로 선언한 변수의 수가 적을수록 실수로 다른 변수를 참조하게 될 가능성이 줄어듭니다. 또한 참조 일치 문제를 최소화할 수 있습니다.
보안
같은 이름으로 선언한 변수의 수가 적을수록 악의적인 코드에서 변수 중 하나를 부적절하게 사용할 가능성이 줄어듭니다.