Partilhar via


Como: Declarar uma estrutura (Visual Basic)

Você começa uma declaração de estrutura com a Structure Statemente termina com a instrução End Structure. Entre essas duas declarações, você deve declarar pelo menos um elemento . Os elementos podem ser de qualquer tipo de dados, mas pelo menos um deve ser uma variável não compartilhada ou um evento não compartilhado e não personalizado.

Não é possível inicializar nenhum dos elementos da estrutura na declaração de estrutura. Quando você declara uma variável como sendo de um tipo de estrutura, atribui valores aos elementos acessando-os por meio da variável.

Para uma discussão sobre as diferenças entre estruturas e classes, consulte Estruturas e classes.

Para fins de demonstração, considere uma situação em que você deseja acompanhar o nome, a extensão telefônica e o salário de um funcionário. Uma estrutura permite que você faça isso em uma única variável.

Para declarar uma estrutura

  1. Crie as declarações de início e fim para a estrutura.

    Você pode especificar o nível de acesso de uma estrutura usando o Público, Protegido, Amigoou palavra-chave Private, ou pode deixá-lo padrão para Public.

    Private Structure employee  
    End Structure  
    
  2. Adicione elementos ao corpo da estrutura.

    Uma estrutura deve ter pelo menos um elemento. Você deve declarar cada elemento e especificar um nível de acesso para ele. Se utilizares a instrução Dim sem palavras-chave, o padrão de acessibilidade será Public.

    Private Structure employee  
        Public givenName As String  
        Public familyName As String  
        Public phoneExtension As Long  
        Private salary As Decimal  
        Public Sub giveRaise(raise As Double)  
            salary *= raise  
        End Sub  
        Public Event salaryReviewTime()  
    
        ' Method to raise the event
        Public Sub TriggerSalaryReview()
            RaiseEvent salaryReviewTime()
        End Sub
    End Structure  
    

    O campo salary no exemplo anterior é Private, o que significa que é inacessível fora da estrutura, mesmo da classe que contém. No entanto, o procedimento giveRaise é Public, por isso pode ser chamado a partir do exterior da estrutura. Da mesma forma, você pode gerar o evento salaryReviewTime indiretamente chamando um método dentro da estrutura que o gera. Por exemplo:

    Public Sub TriggerSalaryReview()
        RaiseEvent salaryReviewTime()
    End Sub
    

    Isso permite que você controle como e quando o evento é gerado, mantendo o evento inacessível diretamente de fora da estrutura.

    Além de variáveis, Sub procedimentos e eventos, você também pode definir constantes, procedimentos Function e propriedades em uma estrutura. Você pode designar no máximo uma propriedade como a propriedade padrão, desde que seja necessário pelo menos um argumento. Você pode manipular um evento com um procedimento compartilhado Sub. Para obter mais informações, consulte Como declarar e chamar uma propriedade padrão no Visual Basic.

Ver também