常量表达式

自从 3.17

常量表达式是在编译时计算的整数表达式,可用于以下位置: 这些表达式只支持Gambas运算符和预定义常量的子集。

以下是您可以在常量表达式中使用的内容:

算术运算符. +, -, *, /, \, DIV, %, MOD
逻辑运算符. AND, OR, XOR, NOT
逐位运算符。 Shl, Shr, Asl, Asr, Lsl, Lsr
本机数字或日期数据类型的大小。 SizeOf
布尔常量 TRUE, FALSE
本机数据类型常量。 gb.Boolean
gb.Byte
gb.Short
gb.Integer
gb.Long
gb.Single
gb.Float
gb.Date
以前声明的任何私有整数常量标识符。.

在常量整数表达式的上下文中, / 运算符的作用类似于整数除法运算符 \

Examples

Public Const Alpha As Integer = 1
Public Const Beta As Integer = (Alpha * 2) + 1
Public Const Delta As Byte = Beta + Alpha

Private Enum FirstFlag = 1 Shl 0, SecondFlag = 1 Shl 1, ThirdFlag = 1 Shl 2

Private SomeEmbeddedArray[Delta * SizeOf(gb.Short)] As String