Compartir a través de


Procedimiento para declarar una estructura (Visual Basic)

Comienzas una declaración de estructura con la instrucción , y la finalizas con la instrucción End Structure. Entre estas dos instrucciones debes declarar al menos un elemento. Los elementos pueden ser de cualquier tipo de datos, pero al menos uno debe ser una variable no compartida o un evento no compartido y no personalizado.

No se puede inicializar ninguno de los elementos de estructura en la declaración de estructura. Al declarar una variable para que sea de un tipo de estructura, asigne valores a los elementos accediéndolos a través de la variable .

Para obtener una explicación de las diferencias entre las estructuras y las clases, vea Estructuras y clases.

Para fines de demostración, considere una situación en la que desea realizar un seguimiento del nombre, la extensión telefónica y el salario de un empleado. Una estructura permite hacerlo en una sola variable.

Para declarar una estructura

  1. Cree las declaraciones iniciales y finales para la estructura.

    Puedes especificar el nivel de acceso de una estructura mediante la palabra clave Pública, Protegida, Amigo o Privada, o bien puedes permitir que sea el valor predeterminado de Public.

    Private Structure employee  
    End Structure  
    
  2. Agregue elementos al cuerpo de la estructura.

    Una estructura debe tener al menos un elemento. Debe declarar cada elemento y especificar un nivel de acceso para él. Si usa la instrucción Dim sin palabras clave, el valor predeterminado de accesibilidad es 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  
    

    El campo salary del ejemplo anterior es Private, lo que significa que no es accesible fuera de la estructura, incluso desde la clase contenedora. Sin embargo, el procedimiento giveRaise es Public, por lo que puede ser llamado desde fuera de la estructura. Del mismo modo, puede generar el evento salaryReviewTime indirectamente llamando a un método dentro de la estructura que lo genera. Por ejemplo:

    Public Sub TriggerSalaryReview()
        RaiseEvent salaryReviewTime()
    End Sub
    

    Esto le permite controlar cómo y cuándo se activa el evento mientras mantiene el evento inaccesible directamente desde fuera de la estructura.

    Además de variables, procedimientos Sub y eventos, también puede definir constantes, procedimientos Function y propiedades en una estructura. Puedes designar como máximo una propiedad como la propiedad predeterminada, siempre que tomes al menos un argumento. Puedes controlar un evento con un procedimiento CompartidoSub. Para obtener más información, vea Cómo: Declarar y llamar a una propiedad predeterminada en Visual Basic.

Consulte también