Variable declaration and scope modifier

Common [Shared] symbolname[()] [AS DataType] [, ...]

Declares a variable which is shared between code modules. A matching Common statement must appear in all other code modules using the variable.

Common variables cannot be initialized.
Common arrays are always variable-length, and must be defined with an empty parameter list (), and its dimensions set in a later Dim or Redim statement.
Common variables cannot be instances of a user-defined type having a constructor or a destructor even implicit.

The Shared optional parameter makes the variable global so that it can be used inside subs and functions, as well as at module level.

'' common1.bas

Declare Sub initme()

Common Shared foo() As Double

ReDim foo(0 To 2)


Print foo(0), foo(1), foo(2)

'' common2.bas

Common Shared foo() As Double

Sub initme()
  foo(0) = 4*Atn(1)
  foo(1) = foo(0)/3
  foo(2) = foo(1)*2
End Sub

 3.141592653589793           1.047197551196598           2.094395102393195

Differences from QB:
See also:
Back to Modularizing
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki phatcode