Udostępnij za pośrednictwem


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

  1. Konfigurowanie Boolean wyrażenie do testowania dwóch obiektów.

  2. 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

  1. Konfigurowanie Boolean wyrażenie do testowania dwóch obiektów.

  2. 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

Object — typ danych

Is — Operator (Visual Basic)

IsNot — Operator (Visual Basic)

Koncepcje

Zmienne obiektów w Visual Basic

Wartości zmiennej obiektu (Visual Basic)

Me, My, MyBase, i MyClass w Visual Basic