
VB传值和传址的区别
看了别人的说明半天还是看不懂,郁闷了,请高手再举个简单点的例子,谢谢……都说要例子的了,高手~~谢谢……...
看了别人的说明半天还是看不懂,郁闷了,请高手再举个简单点的例子,谢谢……
都说要例子的了,高手~~谢谢…… 展开
都说要例子的了,高手~~谢谢…… 展开
5个回答
展开全部
传址就是把参数的地址传过去,这样在子程序中改变参数就会导致实际参数发生变化;而传值则是把实际参数拷贝一个副本传到过程里,这样在过程中更改此参数不会对实际参数发生影响.
展开全部
简单点说:
传值:就是把变量的一个复本传到函数里。
传址:就是把变量的地址传到函数里。
给你个例子:
Private Sub Form_Load()
Dim x As Integer: x = 10
Dim y As String: y = "hello"
haha x, y
Debug.Print x & vbCrLf & y
End Sub
Sub haha(x As Integer, ByVal y As String)
x = x + 1
y = y & " world"
End Sub
传值:就是把变量的一个复本传到函数里。
传址:就是把变量的地址传到函数里。
给你个例子:
Private Sub Form_Load()
Dim x As Integer: x = 10
Dim y As String: y = "hello"
haha x, y
Debug.Print x & vbCrLf & y
End Sub
Sub haha(x As Integer, ByVal y As String)
x = x + 1
y = y & " world"
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
VB传值是复制数据值再用和传址时直接用数据。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sub fun (byval a as integer)
debug.print a
a=1
end sub
sub fun2(byref a as integer)
debug.print a
a=1
end sub
private sub command1_click
dim i as integer
i=0
fun i
debug.print i
i=0
fun2 i
debug.print i
end sub
debug.print a
a=1
end sub
sub fun2(byref a as integer)
debug.print a
a=1
end sub
private sub command1_click
dim i as integer
i=0
fun i
debug.print i
i=0
fun2 i
debug.print i
end sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
值传递:是把实参的值赋给形参。形参的变化不会影响实参,数据传递是单向的。
地址传递:是把实参的地址传递给形参,形参变化实参也跟着变化,数据传递是双向的。
地址传递:是把实参的地址传递给形参,形参变化实参也跟着变化,数据传递是双向的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询