Contenido

# 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.

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