VB,function返回数组

2024-12-03 00:35:50
推荐回答(3个)
回答1:

让函数处理数组基本的思想就是传递数组指针给函数。学过C的对指针应该不陌生吧
所以只要在把数组指针作为参数传递给函数即可,而vb默认传递指针给函数

Private function FunByRef(a() as integer) as Long

可以传递多个数组给函数,同时这些数组也可以作为返回数组

楼上的方法其实也是传递指针

回答2:

你可以在function的参数中放两个数组。一个传入,一个传出。
Private Sub Command1_Click()
Dim Aa(10), Bb(10)
For i = 1 To 10
Aa(i) = i
Next
Call arr(Aa, Bb)
For i = 1 To 10
Print Bb(i)
Next
End Sub
Private Function arr(a, b)
For i = 1 To 10
b(i) = a(i)
Next
End Function
在调用的时候AA有值,BB是空,通过function把值传到BB里面,

回答3:

Private Function testX()
Dim a(3) As Integer
For i = 1 To 3
a(i) = i
Next
testX = a
End Function

Private Sub Form_click()
Dim y
y = testX
For i = 1 To 3
Debug.Print y(i)
Next
End Sub