Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
No Visual Basic, duas referências de variáveis são consideradas idênticas se seus ponteiros forem os mesmos, ou seja, se ambas as variáveis apontarem para a mesma instância de classe na memória. Por exemplo, em um aplicativo do Windows Forms, talvez você queira fazer uma comparação para determinar se a instância atual (Me) é a mesma que uma instância específica, como Form2.
Visual Basic oferece dois operadores para comparar ponteiros. O Operador Is retornará True se os objetos forem idênticos e o Operador IsNot retornará True se não forem.
Determinando se dois objetos são idênticos
Para determinar se dois objetos são idênticos
Configure uma
Booleanexpressão para testar os dois objetos.Na expressão de teste, use o
Isoperador com os dois objetos como operandos.IsretornaTruese os objetos apontarem para a mesma instância de classe.
Determinando se dois objetos não são idênticos
Às vezes, você deseja executar uma ação se os dois objetos não forem idênticos, e pode ser difícil combinar Not e Is, por exemplo If Not obj1 Is obj2. Nesse caso, você pode usar o IsNot operador.
Para determinar se dois objetos não são idênticos
Configure uma
Booleanexpressão para testar os dois objetos.Na expressão de teste, use o
IsNotoperador com os dois objetos como operandos.IsNotretornaTruese os objetos não apontarem para a mesma instância de classe.
Exemplo
O exemplo a seguir testa pares de variáveis para ver se elas apontam para a mesma instância de Object 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))
O exemplo anterior exibe a saída a seguir.
objA different from objB? True
objA identical to objC? True