Visual Basic에서 두 변수 참조는 포인터가 같으면 동일한 것으로 간주됩니다. 즉, 두 변수가 메모리에서 동일한 클래스 인스턴스를 가리키는 경우입니다. 예를 들어 Windows Forms 애플리케이션에서 비교를 수행하여 현재 인스턴스(Me)가 특정 인스턴스 Form2와 같은지 여부를 확인할 수 있습니다.
Visual Basic은 포인터를 비교하는 두 개의 연산자를 제공합니다.
Is 연산자는 개체가 동일한 경우 True를 반환하고, IsNot 연산자는 개체가 동일하지 않은 경우 True를 반환합니다.
두 개체가 동일한지 확인
두 개체가 동일한지 확인하려면
두 개체를
Boolean테스트하는 식을 설정합니다.테스트 식에서 두 개체를 피연산자로 사용하여
Is연산자를 사용하십시오.Is는 개체가 동일한 클래스 인스턴스를 가리키는 경우True를 반환합니다.
두 개체가 동일하지 않은지 확인
때때로 두 개체가 동일하지 않을 때 작업을 수행하고 싶지만, Not와 Is을 결합하는 것이 어색할 수 있습니다. 예를 들어, If Not obj1 Is obj2. 이러한 경우 연산자를 IsNot 사용할 수 있습니다.
두 개체가 동일하지 않은지 확인하려면
두 개체를
Boolean테스트하는 식을 설정합니다.테스트 식에서 두 개체를 피연산자로 사용하여
IsNot연산자를 사용하십시오.IsNot는 개체가 동일한 클래스 인스턴스를 가리키지 않으면 반환True됩니다.
예시
다음 예제에서는 변수 쌍을 Object 테스트하여 동일한 클래스 인스턴스를 가리키는지 확인합니다.
Dim objA, objB, objC As Object
objA = My.User
objB = New ApplicationServices.User
objC = My.User
MsgBox("objA different from objB? " & CStr(objA IsNot objB))
MsgBox("objA identical to objC? " & CStr(objA Is objC))
앞의 예제에서는 다음 출력을 표시합니다.
objA different from objB? True
objA identical to objC? True
참고하십시오
.NET