Instrucción Static

Declara una variable o una matriz a nivel de procedimiento dentro de una subrutina o función, de manera que los valores de la variable o matriz se conservan incluso después de salir de la subrutina o función. Las convenciones de la instrucción Dim también son válidas.

Icono de advertencia

La instrucción Static no se puede utilizar para definir matrices de variables. Las matrices deben especificarse de acuerdo con un tamaño fijo.


Sintaxis:

Static NombreVar[(inicio To final)] [As TipoVar], NombreVar2[(inicio To final)] [As TipoVar], ...

Ejemplo:

Sub ExampleStatic

Dim iCount As Integer, iResult As Integer

    For iCount = 0 To 2

        iResult = InitVar()

    Next iCount

    MsgBox iResult,0,"La respuesta es"

End Sub

 

' Función para la inicialización de la variable estática

Function InitVar() As Integer

    Static iInit As Integer

    Const iMinimum As Integer = 40 ' valor de retorno mínimo de esta función

    If iInit = 0 Then ' comprobar si se inicializó

        iInit = iMinimum

    Else

        iInit = iInit + 1

    End If

    InitVar = iInit

End Function