为什么我无法根据变量设置数组的大小?最好的方法是什么?
Dim NumberOfZombies as integer
NumberOfZombies = 20000
Dim Zombies(NumberOfZombies) as New Zombie
Run Code Online (Sandbox Code Playgroud)
Cod*_*ray 42
如果在运行时之前不知道它将包含的值的数量,则可以使用动态数组:
Dim Zombies() As Integer
ReDim Zombies(NumberOfZombies)
Run Code Online (Sandbox Code Playgroud)
或者,如果要创建一个过程本地的数组,则可以使用一个语句执行所有操作:
ReDim Zombies(NumberOfZombies) As Integer
Run Code Online (Sandbox Code Playgroud)
固定大小的数组需要在编译时知道包含的元素数.这就是为什么你不能使用变量来设置数组的大小 - 按定义,变量的值是可变的,只在运行时知道.
如果您知道变量的值不会改变,则可以使用常量:
Const NumberOfZombies = 2000
Run Code Online (Sandbox Code Playgroud)
但是没有办法在常量和变量之间进行转换.它们有明显不同的含义.
| 归档时间: |
|
| 查看次数: |
101076 次 |
| 最近记录: |