如何:确定两个对象是否相同(Visual Basic)

在 Visual Basic 中,如果两个变量的指针相同,则两个变量引用被视为相同的,也就是说,如果两个变量都指向内存中的同一类实例。 例如,在 Windows 窗体应用程序中,你可能希望进行比较以确定当前实例 (Me) 是否与特定实例相同,例如 Form2

Visual Basic 提供两个运算符来比较指针。 Is 运算符在对象相同时返回True,而IsNot 运算符在对象不同时返回True

确定两个对象是否相同

确定两个对象是否相同

  1. 设置表达式以测试这两个 Boolean 对象。

  2. 在测试表达式中,将 Is 运算符与两个对象作为操作数一起使用。

    Is 如果 True 对象指向同一类实例,则返回。

确定两个对象是否不相同

有时,如果两个对象不相同,您可能希望执行某个操作,而结合NotIs可能会显得尴尬,例如If Not obj1 Is obj2。 在这种情况下,可以使用 IsNot 运算符。

确定两个对象是否不相同

  1. 设置表达式以测试这两个 Boolean 对象。

  2. 在测试表达式中,将 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

另请参阅