Visualbaisc中Byval与Byref的区别

Visualbaisc中Byval与Byref的区别,第1张

Visualbaisc中Byval与Byref的区别,第2张

1.引用参数(ref)在函数成员调用中作为引用参数传递之前必须显式赋值,而输出参数(out)在函数成员调用中作为输出参数传递之前不能显式赋值,在函数成员正常返回之前必须显式赋值。

2.在函数中,参考参数(ref)被视为初始分配,输出参数(out)被视为初始未分配。

3.默认情况下,VB中的所有参数都是通过值传递的。只有当out或ref显式包含在参数的修饰符中时,它才是引用传递。但是你需要知道的是,当参数的类型是引用类型时,你传递的是对一个对象的引用,而不是实际的对象。

示例:

sub add 1(ByVal no as int 32)
no = no+100
end sub

sub add 2(ByRef no as int 32)
no = no+100
end sub

private sub button 1 _ click(sender as object,E eventargs)handles button 1 . click
dim a as int 32
a = 100
add 2(a)
msgbox(" a的值为:" &a)"显示a的值为100

按地址传递,所以在Add2中修改no会导致
'源参数A的值被修改。
结束Sub

ByVal是传递值的源数据,不会被修改。您可以将该值用作自己的局部变量。ByRef是递送地址,并且源数据可能被修改。你对这个变量的操作会影响你传入的变量,就像指针的感觉一样。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » Visualbaisc中Byval与Byref的区别

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情