byref和byval的区别

如题所述

byref 调用方法,传递参数的时候, 以 传引用的方式传递. 方法里面修改参数的值,会影响外面调用者的数值.

byval 调用方法,传递参数的时候, 以 传数值的方式传递. 方法里面修改参数的值, 不会影响外面调用者的数值.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-24
简单的说byref可以双向传递,byval是单向传递。byval 是值传递,byref 是引用传递。比如一个简单地列子你就会:
sub Change(byval a as integer) as integer
a= a +10
end sub
sub Change1(byref a as integer) as integer
a= a+10
end sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
dim int As Integer = 1
change(int)
msgBox(int)
change1(int)
MsgBox(int)
end Sub
end class
这时显示的结果分别是1 和 11本回答被提问者和网友采纳
第2个回答  2011-05-25
看这个:http://zhidao.baidu.com/question/239235439.html
我曾经给网友的解答
相似回答