Porady: określanie, czy dwa obiekty są jednakowe (Visual Basic)
W Visual Basic, dwóch odwołań zmiennych są uważane za identyczne, jeżeli ich wskaźniki są takie same, to znaczy, jeżeli zarówno zmienne punkt do tego samego wystąpienia klasy w pamięci.Na przykład w aplikacji Windows Forms, można dokonać porównania, aby ustalić czy bieżące wystąpienie (Me) jest taki sam jak konkretne wystąpienie, takie jak Form2.
Visual Basiczawiera dwa operatory porównanie wskaźników.Is — Operator (Visual Basic) Zwraca True , jeśli obiekty są identyczne i IsNot — Operator (Visual Basic) zwraca True , jeśli nie są one.
Określenia, jeśli dwa obiekty są identyczne
Aby ustalić, czy dwa obiekty są identyczne
Konfigurowanie Boolean wyrażenie do testowania dwóch obiektów.
W wyrażeniu testowania, użyj Is operatora z dwoma obiektami jako operandów.
IsZwraca True , jeśli obiekty wskaż tego samego wystąpienia klasy.
Określenia, jeśli dwa obiekty nie są identyczne
Czasem warto wykonać akcję, jeśli dwa obiekty nie są identyczne, i może być niewygodne połączyć Not i Is, na przykład If Not obj1 Is obj2.W takim przypadku można użyć IsNot operatora.
Aby ustalić, czy dwa obiekty nie są identyczne
Konfigurowanie Boolean wyrażenie do testowania dwóch obiektów.
W wyrażeniu testowania, użyj IsNot operatora z dwoma obiektami jako operandów.
IsNotZwraca True , jeśli obiekty nie wskazują tej samej instancji klasy.
Przykład
Następujący przykładowy kod sprawdza par Object zmiennych, aby zobaczyć, jeśli wskazywały do tego samego wystąpienia klasy.
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))
Powyższy przykład zawiera następujące dane wyjściowe.
objA different from objB? True
objA identical to objC? True
Zobacz też
Zadania
Porady: określanie, czy dwa obiekty są powiązane (Visual Basic)
Informacje
IsNot — Operator (Visual Basic)
Koncepcje
Zmienne obiektów w Visual Basic