如何:确定两个对象是否相同 (Visual Basic)
在 Visual Basic 中,如果两个变量引用的指针相同(即,如果两个变量都指向内存中的同一个类实例),则两个变量引用被视为是相同的。 例如,在 Windows 窗体应用程序中,可能需要进行比较以确定当前实例 (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