From Apache OpenOffice Wiki
Jump to: navigation, search

Constants are values which may be used but not changed by the program.

Defining Constants

In Basic, use the keyword Const to declare a constant.

Const A = 10
Const B = A+5
Const Hi = "Hello World"
Documentation caution.png Do not specify the constant type in the declaration : it will be silently ignored.

This code shows that you do not get the type that you specify.

Const alpha As Long = 1
Const beta As Single = 3.1
Const gamma As Boolean = True
Const delta As Currency = 123456.05
Const phi As Long = 32768
MsgBox(TypeName(alpha)) ' displays : Integer
MsgBox(TypeName(beta))  ' displays : Double
MsgBox(TypeName(gamma)) ' displays : Integer
MsgBox(TypeName(delta)) ' displays : Double
MsgBox(TypeName(phi))   ' displays : Double

As Basic makes automatic type conversions, there is usually no problems using a constant in an expression.

If you want to specify the type of a data, use a typed variable, not a constant.

Scope of Constants

Constants have the same scope as variables (see Scope and Life Span of Variables), but the syntax is slightly different. A Const definition in the module header is available to the code in that module. To make the definition available to other modules, add the Public keyword.

Public Const one = 1

Predefined Constants Basic predefines several constants. Among the most useful are:

  • True and False, for Boolean assignment statements
  • PI as a type Double numeric value
Dim bHit as Boolean
bHit = True
Dim dArea as Double, dRadius as Double
' ... (assign a value to dRadius)
dArea = PI * dRadius * dRadius

Content on this page is licensed under the Public Documentation License (PDL).
Personal tools