Procedura: determinare se due oggetti sono identici (Visual Basic)
In Visual Basic due riferimenti variabili vengono considerati identici se i relativi puntatori sono uguali, ovvero se entrambe le variabili puntano alla stessa istanza di classe nella memoria. In un'applicazione Windows Form è ad esempio possibile eseguire un confronto per determinare se l'istanza corrente (Me) corrisponde a un'istanza specifica, ad esempio Form2.
In Visual Basic sono disponibili due operatori che consentono di confrontare i puntatori. L'Operatore Is (Visual Basic) restituisce True se gli oggetti sono identici, mentre l'Operatore IsNot (Visual Basic) restituisce True se non lo sono.
Determinazione dell'identicità di due oggetti
Per determinare se due oggetti sono identici
Impostare un'espressione Boolean per eseguire la verifica dei due oggetti.
Nell'espressione di verifica utilizzare l'operatore Is con i due oggetti come operandi.
Is restituisce True se gli oggetti puntano alla stessa istanza di classe.
Determinazione della non identicità di due oggetti
A volte si desidera eseguire un'azione se i due oggetti non sono identici, ma può essere difficile combinare Not e Is, ad esempio If Not obj1 Is obj2. In casi di questo tipo è possibile utilizzare l'operatore IsNot.
Per determinare se due oggetti non sono identici
Impostare un'espressione Boolean per eseguire la verifica dei due oggetti.
Nell'espressione di verifica utilizzare l'operatore IsNot con i due oggetti come operandi.
IsNot restituisce True se gli oggetti non puntano alla stessa istanza di classe.
Esempio
Nell'esempio riportato di seguito viene eseguita la verifica di coppie di variabili Object per stabilire se puntano alla stessa istanza di classe.
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))
Di seguito è riportato l'output dell'esempio precedente.
objA different from objB? True
objA identical to objC? True
Vedere anche
Attività
Procedura: determinare se due oggetti sono correlati (Visual Basic)
Riferimenti
Operatore IsNot (Visual Basic)
Concetti
Variabili oggetto in Visual Basic