如何:测试两个对象是否相同(Visual Basic)

如果有两个引用对象的变量,则可以使用 IsIsNot 运算符或两者来确定是否引用同一实例。

测试两个对象是否相同

  • 使用 Is 运算符IsNot 运算符,并将两个变量作为操作数。

    Public Sub processControl(ByVal f As System.Windows.Forms.Form, 
        ByVal c As System.Windows.Forms.Control)
        Dim active As System.Windows.Forms.Control = f.ActiveControl
        If (active IsNot Nothing) And (c Is active) Then
            ' Insert code to process control c
        End If
        Return
    End Sub
    

可能需要执行特定操作,具体取决于两个对象是否指向同一实例。 前面的示例将控件 c 与窗体 f上的活动控件进行比较。 如果没有活动控件,或者如果有活动控件,但它与控件实例 c 不相同,那么 If 语句将失败,过程返回而不进一步处理。

使用 Is 还是 IsNot 是个个人便利性的问题。 一个可能比给定表达式中的另一个更容易读取。

另请参阅