Compartir a través de


Cómo: Determinar si dos objetos son idénticos (Visual Basic)

En Visual Basic, dos referencias de variable se consideran idénticas si sus punteros son los mismos, es decir, si ambas variables señalan la misma instancia de clase en la memoria. Por ejemplo, en una aplicación de Windows Forms, es posible que desee realizar una comparación para determinar si la instancia actual (Me) es igual que una instancia determinada, como Form2.

Visual Basic proporciona dos operadores para comparar los punteros. Is (Operador, Visual Basic) devuelve True si los objetos son idénticos e IsNot (Operador) (Visual Basic) devuelve True si no lo son.

Determinar si dos objetos son idénticos

Para determinar si dos objetos son idénticos

  1. Prepare una expresión Boolean para probar los dos objetos.

  2. En la expresión de prueba, utilice el operador Is con los dos objetos como operandos.

    Is devuelve True si los objetos señalan a la misma instancia de clase.

Determinar si dos objetos no son idénticos

A veces, desea realizar una acción cuando los dos objetos no son idénticos y puede ser complicado combinar Not e Is, por ejemplo If Not obj1 Is obj2. En estos casos puede utilizar el operador IsNot.

Para determinar si dos objetos no son idénticos

  1. Prepare una expresión Boolean para probar los dos objetos.

  2. En la expresión de prueba, utilice el operador IsNot con los dos objetos como operandos.

    IsNot devuelve True si los objetos no señalan a la misma instancia de clase.

Ejemplo

El ejemplo siguiente prueba pares de variables Object para ver si señalan a la misma instancia de clase.

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))

El ejemplo anterior muestra el siguiente resultado.

objA different from objB? True

objA identical to objC? True

Vea también

Tareas

Cómo: Determinar si dos objetos están relacionados (Visual Basic)

Referencia

Object (Tipo de datos)

Is (Operador, Visual Basic)

IsNot (Operador) (Visual Basic)

Conceptos

Variables de objeto en Visual Basic

Valores de las variables de objeto (Visual Basic)

Me, My, MyBase y MyClass en Visual Basic