VB6-对象类型与流程控制

1. VB6的数组

Dim array1(6) As Long ' 创建了7个元素,不写的话,就是null空指针。
array1(0) = 1
Dim I As Integer
For I = 0 To 6 ' for循环遍历
     Console.WriteLine array1(I)
Next I
' 数组索引超出边界会报错的
' 获取数组长度
UBound(array1)

 

VB数组扩容

在VB6中,在一开始的声明时就需要给定数组的长度,因此数组长度是固定的。如何扩容呢?

Dim array1() As Long  ' 这里不能给定数组的长度,不然后面无法扩容
ReDim array1(0)   
array1(0) = 12 Console.WriteLine (
UBound(array1)) ' 0 ReDim array1(UBound(array1) + 1) Console.WriteLine (UBound(array1)) ' 1
Console.WriteLine (array1(0)) ' 0 仍然是0,扩容的时候扩的是整体,会把之前的值全部重置为0
 

 

 

数组扩容保存之前的值

Redim 后面加上Preserve

Dim array1() As Long  ' 这里不能给定数组的长度,不然后面无法扩容
ReDim Preserve array1(0)
array1(0) = 12
Console.WriteLine (UBound(array1))   ' 0
ReDim Preserve array1(UBound(array1) + 1)
Console.WriteLine (UBound(array1))   ' 1
Console.WriteLine (array1(0))   ' 12 值被保存了

 

2. VB中的对象

 

3. For 循环遍历

array1(0) = 1
array1(1) = 2
array1(2) = 3
For I = 0 To UBound(array1)
     If array1(I) = 2 Then
        Exit For
     End If
     Console.WriteLine array1(I)
Next
' 只打印了1

 

4. 错误处理

 

posted @ 2023-01-13 16:53  re大法好  阅读(268)  评论(0)    收藏  举报