- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
8.3 子过程的定义和调用 8.3.1 子过程的定义 子过程以过程名来标识,被其它过程调用。子过程与事件过程有一定区别,事件过程可以在该事件触发或调用时执行,而用户自定义的子过程只有在被其它过程调用时才能执行。 子过程的定义跟函数过程的定义相类似,在代码窗口中输入Sub及子过程名即可,系统会自动加上End Sub与子过程名后的一对括号(),然后即可在子过程的框架中输入程序代码。 子过程的定义格式: [Private|Public][Static] Sub 过程名[(参数列表)] [语句块1] [Exit Sub] [语句块2] End Sub ——————————— 说明: [Public]|[Private]与[Static]:它们的含义和作用与函数过程中相应的这些关键词相同。 [(参数列表)]:该项中参数的形式和调用方法也与函数过程相同。 [Exit Sub]:退出过程,该项一般嵌套在if结构中使用,在满足if条件时退出该过程。 6.2 子过程的定义和调用 例:分别计算两个数的和与差,而当两个数的值均为0时则不进行任何计算。 Sub Operation(x As Integer , y As Integer) Dim t1 as Integer, t2 as Integer If x =0 and y=0 Then Exit Sub End If t1=x+y t2=x-y Print “t1=”;t1; “t2=”;t2 End Sub 6.2 子过程的定义和调用 在Sub 过程与Function 过程之间的区别: 1)子过程名无类型说明,在子过程中不能对子过程名进行赋值。 2) 子过程的形式参数没有具体的值,只代表参数的个数、位置、类型。 3)子过程的调用必须是一条独立的语句。 8.3 子过程的定义和调用 8.3.2 子过程的调用 1.使用Call语句调用 格式:Call 子过程名[(实参列表)] 说明: ① 实参的个数,数据类型都应与被调用过程的形参一一对应。用Call语句调用时,若有实参,括号不能省略,否则,可以省略括号。 ② 若子过程要通过实参向主调过程中返回值,则实参只能是简单变量、数组名或自定义类型变量。 8.3 子过程的定义和调用 例如: Private Sub Command1_Click() a=”Visual Basic” b= “6.0” Call Link(a,b) End Sub 此时,将输入的值a和b作为实参调用Link子过程,通过调用将两个实参传递给形参,然后在过程中计算。 8.3 子过程的定义和调用 2.直接使用过程名调用 格式:子过程名 [实参列表] 说明:此形式调用子过程时,实参不用加括号,否则在有的编译版本中出现编译错误,若有多个实参,则实参之间用逗号分隔。 例如: Private Sub Command1_Click() a=”Visual Basic” b= “6.0” Link a , b End Sub 8.4 参数传递 8.4.1 形参与实参 1、形参 指出现在Sub 和Function过程形参表中的变量名、数组名,该过程在被调用前,没有为它们分配内存,其作用是说明自变量的类型和形态以及在过程中的作用。形参可以是除定长字符串变量之外的合法变量名,也可以带括号的数组名。 2、实参 实参就是在调用Sub 和Function过程时,从主调过程传递给被调用过程的参数值。实参可以是变量名、数组名、常数或表达式。在过程调用传递参数时,形参与实参是按位置结合的,形参表和实参表中对应的变量名可以不必相同,但它们的数据类型、参数个数及位置必须一一对应。 8.4 参数传递 3、形参与实参的关系 形参如同公式中的符号,实参就是符号具体的值,在调用过程前必须得到赋值;调用过程就是实现形参与实参的结合,把实参的值通过调用传递给形参,相当于把值代入公式进行计算。 8.4 参数传递 8.4.2 地址传递与值传递 在Visual Basic中,实参与形参的结合有两种方式,即地址传递(ByRef)与值传递(ByVal),地址传递又称为引用。 10 10 20 a的地址 地址传递 值传递 实参b 形参y 实参 a 形参 x 8.4 参数传递 1.地址传递 在VB6.0中,在形参前加ByRef或在缺省该关键字,则实参与形参的结合就是地址传递方式。 例8.5通过调用子过程实现将两个字符串进行互换。 分析:首先定义一个能够实现字符串交换的子过程S
文档评论(0)