您的位置 电脑知识爱好者 >> 编程知识 >> 简述对按值传递和按地址传递的理解(150字以上)

简述对按值传递和按地址传递的理解(150字以上)

电脑知识爱好者互联网本站整理2008-2-21 0:00:52
知识重点:打个比方: 我手里有一张纸,纸上画着一只猫. 现在,你想知道猫长什么样子,我把手里的纸给你看看,然后你在自己的纸上也画了一只猫,我们假设拟是个天才,画出来的猫和我的一模一样.现在,你感觉这只猫..

打个比方: 我手里有一张纸,纸上画着一只猫. 现在,你想知道猫长什么样子,我把手里的纸给你看看,然后你在自己的纸上也画了一只猫,我们假设拟是个天才,画出来的猫和我的一模一样.现在,你感觉这只猫猫有点丑,就给它添了几根毛.现在,你手里的猫和我的猫就不一样了.最终结果是你有一只猫,我也有一只猫.这就是按值传递的意思.其实质是复制(COPY). 如果我觉得你自己可能画得不像,而我手里这张纸又没有多大用处,我就干脆把自己的这张画给了你,然后你自己怎么删改那是你自己的事情了,但是你要是一不小心给改坏了,不好意思,世上仅此一份,我给你了,再要就没有了!这就是按址传递,实质是赐予(GIVE).
输入一个数,按按值传递和按地址传递参数进行加1操作。

设计步骤如下:

① 建立应用程序用户界面和添加控件,并设置各对象的属性.按值传递和按地址传递参数

② 编写事件代码

编写Add1和Add2通用过程代码:

Sub Add1(ByVal x As Integer) ' 按值传递参数

x = x + 1

End Sub

Sub Add2(ByRef y As Integer) ' 按地址传递参数

y = y + 1

End Sub

编写“按值传递”命令按钮Button1的Click过程代码

Private Sub Button1_Click(ByVal sender As System.Object,_

ByVal e As System.EventArgs) Handles Button1.Click

Dim i As Integer

i = TextBox1.Text

Add1(i)

TextBox2.Text = i

End Sub

编写“按地址传递”命令按钮Button2的Click过程代码:

Private Sub Button2_Click(ByVal sender As System.Object,_

ByVal e As System.EventArgs) Handles Button2.Click

Dim i As Integer

i = TextBox1.Text

Add2(i)

TextBox2.Text = i

End Sub

'注意:传地址,对行参的任何操作都变成对相应实参的操作,实参的会随过程体内行参的改变而改变.

'例如:add2(i)当调用时,改变了地址,即地址值加"一".

参与评论
相关内容
关于我们 | 隐私政策 | 站点地图 | 站长博客|京ICP备07025396号
添加到百度搜藏 添加到百度搜藏 电脑知识爱好者Copyright ?2006-2008版权所有 我要啦免费统计