常量表达式
自从 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