COMMON shares common variable values with other linked or CHAINed modules.
- The multi-modular technique goes back to when QBasic and QuickBASIC had module size constraints. In QB64 COMMON has been implemented so that that older code can still be compiled, though it is advisable to use single modules for a single project (not counting $INCLUDE libraries), for ease of sharing and also because the module size constraints no longer exist.
COMMON [SHARED] variableList
- COMMON must be called before any executable statements.
- SHARED makes the variables shared within SUB and FUNCTION procedures within that module.
- variableList is the list of common variables made available separated by commas.
- Remember to keep the variable type order the same in all modules, as the variables names don’t matter.
- COMMON SHARED is most commonly used to share the variables with subs and functions of that module.
- Note: Values assigned to shared variables used as procedure call parameters will not be passed to other procedures. The shared variable value must be assigned inside of the SUB or FUNCTION procedure to be passed.