weloop苹果版本官网:VB题目调用语句

来源:百度文库 编辑:高校问答 时间:2024/04/28 10:12:19
Private X As Integer
Private Sub Command1_Click()
X=5:Y=3
Call proc(X,Y)
Label1.Caption=X
Label2.Caption=Y
End Sub
Private Sub proc(ByVal a As Integer,ByVal b As Integer)
X=a*a
Y=b+b
End Sub
程序运行后,单击命令按钮,则两个标签中显示的内容分别是
结果是什么为什么啊
不是 25 和 6 么?
能不能举个例子打个比方

不是的,是25和3
byVal与byRef不同,首先Private X As Integer 被定义为全局变量
X=a*a 语句会影响到此变量
byVal按值传递单纯传递的是值,而ByRef是按引用(地址)传递,传递的是变量内存地址。

是25 和6 啊,我运行了下 对的
Option Explicit
Private X As Integer, y As Integer
Private Sub Command1_Click()
X = 5: y = 3
Call proc(X, y)
Label1.Caption = X
Label2.Caption = y
End Sub
Private Sub proc(ByVal a As Integer, ByVal b As Integer)
X = a * a
y = b + b
End Sub