请问下面代码Fun((A), B)中的(A)括号是什么意思?

时间:2023-01-07 21:17:55
Option Explicit

Private Sub Command1_Click()
Dim A As Integer, B As Integer, K As Integer
A = 2: B = 4
K = Fun((A), B) + Fun(A, B)
Print K
End Sub
Private Function Fun(N As Integer, M As Integer) As Integer
Static K As Integer
N = N + M
K = K + N
M = M + K
Fun = N + M
Print Fun; N; M
End Function

7 个解决方案

#1


a的值

#2


A加括号是传值,不加括号是传地址。
传值在fun函数返回时不改变A变量的原有值,传地址在fun函数返回时会改变A变量的原有值。

#3


支持猴哥!!mark

#4


A加括号是传值,不加括号是传地址。
传值在fun函数返回时不改变A变量的原有值,传地址在fun函数返回时会改变A变量的原有值
这个有点麻烦,耐心点学就行啦
加油!

#5


学习了
用了这么多年的Vb了,现在才知道这种怪异的用法。

#6


引用 2 楼 chinaboyzyq 的回复:
A加括号是传值,不加括号是传地址。
传值在fun函数返回时不改变A变量的原有值,传地址在fun函数返回时会改变A变量的原有值。

如果事先加了关键字ByVal或ByRef括号还起不起作用?

#7


引用 6 楼 franticblack 的回复:
引用 2 楼 chinaboyzyq 的回复:
A加括号是传值,不加括号是传地址。
传值在fun函数返回时不改变A变量的原有值,传地址在fun函数返回时会改变A变量的原有值。

如果事先加了关键字ByVal或ByRef括号还起不起作用?


vb默认是byref,没有byref和byval的都按byref处理
除非你声明是byval

#1


a的值

#2


A加括号是传值,不加括号是传地址。
传值在fun函数返回时不改变A变量的原有值,传地址在fun函数返回时会改变A变量的原有值。

#3


支持猴哥!!mark

#4


A加括号是传值,不加括号是传地址。
传值在fun函数返回时不改变A变量的原有值,传地址在fun函数返回时会改变A变量的原有值
这个有点麻烦,耐心点学就行啦
加油!

#5


学习了
用了这么多年的Vb了,现在才知道这种怪异的用法。

#6


引用 2 楼 chinaboyzyq 的回复:
A加括号是传值,不加括号是传地址。
传值在fun函数返回时不改变A变量的原有值,传地址在fun函数返回时会改变A变量的原有值。

如果事先加了关键字ByVal或ByRef括号还起不起作用?

#7


引用 6 楼 franticblack 的回复:
引用 2 楼 chinaboyzyq 的回复:
A加括号是传值,不加括号是传地址。
传值在fun函数返回时不改变A变量的原有值,传地址在fun函数返回时会改变A变量的原有值。

如果事先加了关键字ByVal或ByRef括号还起不起作用?


vb默认是byref,没有byref和byval的都按byref处理
除非你声明是byval