The $STATIC Metacommand allows the creation of static (unresizable) arrays.
Syntax
{REM ’ } $STATIC
Description
- QBasic Metacommands require a REM or apostrophy (‘) before them and are normally placed at the start of the main module.
- Static arrays cannot be resized. If a variable is used to size any array, it becomes $DYNAMIC.
- A REDIM statement has no effect on $STATIC arrays except perhaps a ERROR Codes at the REDIM statement.
- The array’s type cannot be changed once DIM and a literal value sets the dimensions and element size.
- $STATIC defined program arrays cannot be REDIM or use _PRESERVE.
Example(s)
When a variable is used, the array can be resized despite $STATIC. The array becomes $DYNAMIC.
'$STATIC
INPUT "Enter array size: ", size
DIM array(size) 'using an actual number instead of the variable will create an error!
REDIM array(2 * size)
PRINT UBOUND(array)
Note: DIM using a literal numerical size will create a Duplicate definition error.