中易网

vb中,byval和byref的用法有什么区别啊?具体能举个例子吗?困惑~~~

答案:3  悬赏:20  
解决时间 2021-01-15 02:28
vb中,byval和byref的用法有什么区别啊?具体能举个例子吗?困惑~~~
最佳答案
BYREF说明白点就是在过程中使用的数值和外面的数值相等了,并且一旦在过程中改变了这个数值,那么引用过程的数值也修改了。一般来说缺省就是BYREF。
优点:节约一个内存地址的大小,并且实现数值的修改

BYVAL指的是为这个变量在内存中重新开辟一个地址进行存储。在过程中修改这个数值不会影响这个数值。

PS下,楼上的有些地方写错了FUNCTION必须有返回值。应当声明成过程。
再PS一下,他的解释也是对的

对他修改一下
(1)ByRef
例如
SUB byr(byref a as integer)'BYREF不写也是对的
a=10
end SUB

然后如果我们这样用
Dim x as integer
byr x
msgbox x
输出10

(2)ByVal
例如
SUB byv(byval a as integer)
a=10
end SUB
然后再
Dim x as integer
byv x
msgbox x
全部回答
二楼正解!一楼的函数过程需要最后把参数赋值给函数名的…少一句赋值代码,其他没什么问题!建议楼主看下关于Sub过程与Function过程的讲解,不算难!!
(1)ByRef
例如
function byr(byref a as integer)
a=10
end function
然后如果我们这样用
Dim x as integer
byr x
msgbox x
输出10
(2)ByVal
例如
function byv(byval a as integer)
a=10
end function
然后再
Dim x as integer
byv x
msgbox x
输出0,因为传值,无法返回。
注:数组、自定义类型只能通过ByRef传,因为他们不是一个值,是一组值,一组值就只能传内存地址了。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
1997年的高考分数还能查吗
谁能告诉我打狗队是怎样打狗
歌词投稿平台,我用亲身经历和灵感用四年多创
含“有声”的成语
市场经济狼争虎斗,是智者,强者,勤奋者的天
3月开的支票,5月到期什么意思
中国体育彩票(城关镇商业城中国体育彩票)地址
黄山市屯溪区图书馆地址在哪,我要去那里办事
长沙友谊阿波罗卡可以查使用明细吗? 可以调商
想交一个说英语的外国朋友,怎么找
电冰箱买回家多长时间可以插入电源
龙泉宝剑博物馆怎么去啊,我要去那办事
雾之本境主题曲的背景音乐叫什么
全民农场迷之订单让女生觉得浪漫的东西是什么
话说中国的鲛人和外国的美人鱼谁更早
推荐资讯
11乘以25乘以四怎样简便运算
《择天记》拍成这样,猫大真的不会心痛吗
百卉格鲜花坊地址在什么地方,我要处理点事
linux lv vg pv什么关系
对生活最创意的表达 作文题目 600字
她姓赵罩不住你心 你姓吴什么什么
就业协议第四联交给谁的,该怎么处理
陆羽和他的《茶经》在中国茶文化史上是什么地
英格纳手表什么档次
劳动合同不给员工,可否视同未签
作文我所了解的临中
32除以四等于多少?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?