Partilhar via


Como: Testar se dois objetos são os mesmos (Visual Basic)

Se você tiver duas variáveis que se referem a objetos, poderá usar o Is operador ou IsNot ou ambos para determinar se eles se referem à mesma instância.

Para testar se dois objetos são iguais

  • Use o operador Is ou o operador IsNot com as duas variáveis como operandos.

    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
    

Talvez você queira executar uma determinada ação dependendo se dois objetos se referem à mesma instância. O exemplo anterior compara o controle c com o controle ativo no formulário f. Se não houver nenhum controle ativo, ou se houver um, mas não for a mesma instância de controle que c, a If instrução falhará e o procedimento retornará sem processamento adicional.

Se você usa Is ou IsNot é uma questão de conveniência pessoal para você. Um pode ser mais fácil de ler do que o outro numa dada expressão.

Consulte também