The $DYNAMIC Metacommand allows the creation of dynamic (resizable) arrays.
Syntax
{REM ’ } $DYNAMIC
Description
- QBasic Metacommand require REM or Apostrophe (‘) before them and are normally placed at the start of the main module.
- Dynamic arrays can be resized using REDIM. The array’s type cannot be changed.
- All data in the array will be lost when REDIMensioned except when _PRESERVE is used.
- REDIM _PRESERVE can preserve and may move the previous array data when the array boundaries change.
- _PRESERVE allows the UBOUND and LBOUND boundaries of an array to be changed. The number of dimensions cannot change.
- $DYNAMIC arrays must be REDIMensioned if ERASE or CLEAR are used as the arrays are removed completely.
Example(s)
REDIMing a $DYNAMIC array using _PRESERVE to retain previous array values.
REM $DYNAMIC 'create dynamic arrays only
DIM array(10) 'create array with 11 elements
FOR i = 0 TO 10
array(i) = i: PRINT array(i); 'set and display element values
NEXT
PRINT
REDIM _PRESERVE array(10 TO 20)
FOR i = 10 TO 20
PRINT array(i);
NEXT
END
0 1 2 3 4 5 6 7 8 9 10
0 1 2 3 4 5 6 7 8 9 10