VB参数参数传递中,传值与传址的区别

 我来答
syx54
2012-06-29 · TA获得超过7378个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2689万
展开全部
定义的区别:Byval和Byref
Private sub 传值(Byval a As Integer)
  a=5
End Sub

Private sub 传址(ByRef a As Integer)
a=5
End Sub
调用上的区别:
Mya = 6
call 传值(Mya) '调用传值
Print Mya '结果不变为6
call 传址(Mya) '调用传址
Print Mya '结果变为5
简单的理解:传值情况,外部变量与自定义过程内的变量是两个
传址情况,外部变量与自定义过程内的变量就是同一个
一方乐土养生f
推荐于2017-12-16 · TA获得超过1044个赞
知道小有建树答主
回答量:691
采纳率:0%
帮助的人:516万
展开全部
传址参数在子过程里面的改变会影响过程外的对应参数,传值则不会,VB里面默认是传址也就是byref的
比如:sub f(byref a as integer)
a=1
end sub
主函数中:f i,此时i=1

而sub f(byval a as integer)
a=1
end sub
主函数中:f i,此时i的值没变
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fjlyluzhenyue
2012-06-29 · TA获得超过338个赞
知道小有建树答主
回答量:386
采纳率:0%
帮助的人:232万
展开全部
传址(地址传过去):这个过程变化全部变化
传值(只传送值):不同的过程相同名的变量值会不同
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式