欢迎来到山村网

VB中Byval和byref的区别

2019-03-29 02:31:16浏览:379 来源:山村网   
核心摘要:  在VB中Byval 和byref怎么区别?简单来说Byval是传值,byref是传地址,ByVal :表示该参数是按值方式传递的。ByRef:表示该参数

  在VB中Byval 和byref怎么区别?简单来说Byval是传值,byref是传地址,ByVal :表示该参数是按值方式传递的。ByRef :表示该参数按引用方式传递。下面绿茶小编为大家详细介绍Byval 和byref的区别。

  1、引用参数(ref)在可以作为引用参数在函数成员调用中传递之前,必须已明确赋值,而输出参数(out)在可以作为输出参数在函数成员调用中传递之前不一定要明确赋值,在该函数成员正常返回前都必须已明确赋值。

  2、在函数内部,引用参数(ref)被视为初始已赋值,输出参数(out)被视为初始未赋值。

  3、默认地,VB中的所有参数都是值传递。只有在参数的修饰符中明确包含out或ref,才是引用传递。但是需要知道的是,当参数的类型是引用类型时,你传递的是一个对象的引用而不是实际的对象。

  实例:

sub Add1(ByVal no as int32)

 no=no+100

end sub

sub Add2(ByRef no as int32)

 no=no+100

end sub

private sub button1_click(sender as object,e as eventargs)handles button1.click

 dim a as int32

 a=100

 Add1(a)

 msgbox ("a的值为:" & a) '显示:a的值为100

 Add2(a)

 msgbox ("a的值为:" & a) '显示:a的值为200,因为Add2中的参数no为ByRef,即

 '按地址传递,因此在Add2中对no进行修改后,将会导致

 '源参数a的值也被修改。

End Sub

  ByVal是传递值 源数据不会被修改,你可以把这个值当作自己的局部变量来使用;ByRef是传递地址,源数据可能被修改,你对这个变量的操作将对你传入的那个变量产生影响。

(责任编辑:豆豆)
下一篇:

19条ANDROID平台设计规范

上一篇:

以用户为中心的WEB表单

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com