数组声明
DIM Identifier AS [ NEW ] Datatype [ Array dimensions ... ]
注意,可以使用任意表达式指定数组大小。
示例
Dim aWords As New String[WORD_MAX * 2]
Dim aMatrix As New Float[3, 3]
Dim aResult As String[]
在Gambas3中,数组元素可以使用任何数据类型。
示例
DIM aLabel AS NEW Label[12, 12]
DIM aResult AS NEW String[][12] ' 一个字符串数组的数组!
维度
数组可以有多个维度,最大可以有8维。
示例
Dim iGroupc As New Integer[27, 9]
Dim iFieldr As New Integer[9]
Dim iX9X AS NEW Integer[3, 4, 5, 2, 3, 2, 2, 4, 2] '将会报告错误
声明中的"
DIM"关键字源于六十年代,那时BASIC变量不需要声明,除非是有维度的数组。
Gambas使用[ ]取代( )来声明维度和使用下标。
嵌入式数组
[ STATIC ] { PUBLIC | PRIVATE } Identifier [ Array dimensions ... ] AS Native Datatype
嵌入式数组是一个被直接分配在声明所在
对象内部的数组。
这样的数组不能被对象共享和删除。
嵌入式数组不能是公共的,而且不能进行初始化。
创建嵌入式数组是为了简化Gambas和位于共享库中的外部函数之间的接口。
因此,强烈建议仅在不能使用普通数组的情况下使用它们。
或者是使用嵌入式数组的代码比使用普通数组的代码运行得更快,在某些情况下这是可能的。
在Gambas3中,嵌入式数组不能再被当作局部变量,但是可以是公共的!
示例
Private Handles[8] As Label
Static Private TicTacToe[3, 3] As Integer
参见