我在我正在处理的一些代码中遇到了一个问题,为了说明的目的,我已经对以下内容进行了细化。
假设我定义了以下字符串和函数:
Public Property Main.Priority As Integer = 0
Public Sub test(ByRef objs As Array)
For Each obj As Object In objs
obj = 1
MsgBox(obj)
Next
End Sub
然后我想调用该函数如下:
test({Main.Priority})
MsgBox(Main.Priority)
这会在第一个消息框中显示1
,然后在第二个消息框中显示0
。
另一方面,如果我执行以下操作:
Public Property Main.Priority As Integer = 0
Public Sub test(ByRef obj As integer)
obj = 1
MsgBox(obj)
End Sub
并以同样的方式再次打电话:
test({Main.Priority})
MsgBox(Main.Priority)
我得到1
和1
。如何将ByRef
与数组一起使用以获得所需的功能?
我正在使用一个数组,因为我将一步一步地做多个。