STATIC Statement Details Syntax STATIC variablelist A STATIC statement variablelist has the following syntax: variable[()] [AS type] [,variable[( )][AS type]]... The variablelist takes the following arguments: Argument Description variable Either a variable name or an array name. AS type Declares the type of variable. The type argument can be INTEGER, LONG, SINGLE, DOUBLE, STRING, or a user-defined type. The STATIC statement can appear only in a SUB, FUNCTION, or DEF FN function. Earlier versions of BASIC required the number of dimensions in parentheses after an array name. In QuickBASIC, the number of dimensions is optional. Variables declared in a STATIC statement override variables of the same name shared by DIM or COMMON statements in the module-level code. Variables in a STATIC statement also override global constants of the same name. Usually, variables used in DEF FN functions are global to the module; however, you can use the STATIC statement inside a DEF FN statement to declare a variable as local to only that function. Note: The STATIC attribute on SUB and FUNCTION statements declares the default for variables to be STATIC. Variables having the same name as variables shared by the module-level code are still shared. In contrast, the STATIC statement makes specific variables STATIC and overrides any variables shared by the module-level code. The $STATIC metacommand affects how memory is allocated for arrays.