VB题求解

来源:百度知道 编辑:UC知道 时间:2024/05/22 20:29:50
Public Function f(x As Integer)
Dim y As Integer
x = 20
y = 2
f = x * y
End Function

Private Sub Command1_Click()
Static x As Integer
x = 10
y = 5
y = f(x)
Print x; y

End Sub
我不懂结果的20与40是怎样子的来的?
谢谢帮忙.

很容易发现 ,函数就是输出结果为40,没有什么作用,
函数中的y对别的不影响,但是x有影响,因为他是全局变量,因为y在函数中定义的,而x没有定义了.
所以就会发现函数可以改变x的值,所以结果就是20,40了.

y 是f函数的结果
x 是F函数赋值20,Static x As Integer 在函数外定义为静态变量