Compartilhar via


Atribuição de variável de objeto (Visual Basic)

Você usa uma instrução de atribuição normal para atribuir um objeto para um variável objeto.Você pode atribuir uma expressão de objeto ou a palavra-chave Nothing , como mostra o exemplo a seguir.

Dim thisObject As Object
' The following statement assigns an object reference.
thisObject = Form1
' The following statement discontinues association with any object.
thisObject = Nothing

Nothing significa que não há nenhum objeto atualmente atribuído à variável.

Inicialização

Quando seu código começa a ser executado, suas variáveis objeto são inicializadas para Nothing.Aqueles cujas declarações incluem inicialização são reinicializadas para os valores que você especificar quando instruções de declaração são executadas.

Você pode incluir a inicialização na sua declaração usando a palavra-chave New.As seguintes instruções de declaração declaram variáveis de objeto testUri e ver e atribuem objetos específicos a elas.Cada uma usa os construtores sobrecarregados da classe apropriada para inicializar o objeto.

Dim testUri As New System.Uri("https://www.microsoft.com")
Dim ver As New System.Version(6, 1, 0)

Desassociação

Definir uma variável objeto como Nothing interrompe a associação da variável com qualquer objeto específico.Isso evita que você altere acidentalmente o objeto alterando a variável.Isso também permite que você teste se a variável objeto aponta para um objeto válido, como mostra a exemplo a seguir.

If otherObject IsNot Nothing Then
    ' otherObject refers to a valid object, so your code can use it.
End If

Se o objeto que sua variável se refere estiver em outro aplicativo, esse teste não consegue determinar se o aplicativo foi finalizado ou simplesmente invalidou o objeto.

Uma variável de objeto com um valor de Nothing também é chamada de uma referência nula .

Instância atual

A instância atual de um objeto é a instância na qual o código está em execução atualmente.Como todo o código é executado dentro de um procedimento, a instância atual é aquela na qual o procedimento foi chamado.

A palavra-chave Me atua como uma variável de objeto referindo-se à instância atual.Se não for um procedimento não for Compartilhado (Visual Basic), ele pode usar a palavra-chave Me para obter um ponteiro para a instância atual.Procedimentos compartilhados não podem ser associados com uma instância específica de uma classe.

Usar Me é particularmente útil para passar a instância atual para um procedimento em outro módulo.Por exemplo, suponha que você tenha um número de documentos XML e deseja adicionar um texto padrão para todos eles.O exemplo a seguir define um procedimento para fazer isso.

Sub addStandardText(XmlDoc As System.Xml.XmlDocument)
    XmlDoc.CreateTextNode("This text goes into every XML document.")
End Sub

Cada objeto de documento XML poderia chamar o procedimento em seguida e passar sua instância atual como um argumento.O exemplo a seguir demonstra isso.

addStandardText(Me)

Consulte também

Tarefas

Como: declara uma variável de objeto e atribuir um objeto para ele no Visual Basic

Como: tornar um objeto variável não se referir a qualquer instância (Visual Basic)

Conceitos

Variáveis de objeto em Visual Basic

Declaração de variável de objeto (Visual Basic)

Valores de variáveis de objeto (Visual Basic)

Me, My, MyBase, and MyClass in Visual Basic