VB课件含具体例子第9章过程幻灯片.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
例题9-24 Private Sub Command1_Click() Dim x As Integer x = x + 1: Print x End Sub Private Sub Command2_Click() Static x As Integer x = x + 1: Print x End Sub 单步调试 连续3次单击命令按钮1的运行结果: 1 1 1 连续3次单击命令按钮2的运行结果: 1 2 3 9.6 变量、过程的作用域 9.6.4 综合示例 [例题9-25] [例题9-26] [例题9-27] [例题9-28] [例题9-29] 例题9-25 Option Explicit Private x1 As Integer, x2 As Integer Private Sub Form_Click() x1 = 1: x2 = 1 test1 x1, x2 Print x1; x2 test2 x1 * 1, (x2) Print x1; x2 End Sub Sub test1(ByVal a As Integer, b As Integer) a = a + 1 b = b + 1 End Sub 单步调试 Sub test2(a As Integer, b As Integer) a = a + 1 b = b + 1 End Sub 不存在同名过程级和模块级变量,因此在整个窗体模块中的任意过程中对于x1、x2的访问都是针对全局变量x1、x2 过程调用test1 x1, x2,实参x1对应的形参a之间是按值传递,所以形参a的变化不会影响实参x1,而实参x2对应的形参b之间是地址传递方式,所以形参b的变化直接影响实参x2的变化,所以当test1过程调用结束,实参x2的值变成2,实参x1的值不变仍为1 调用test2过程时,定义的是按地址传递方式形参,但由于实参x1*1是表达式,用()形式已经将x2变量转换成实参表达式,所以当实参是一个表达式或常量时,则实参与形参是按值传递的,所以形参的变化不会影响实参 单击窗体的运行结果: 1 2 1 2 例题9-26 Option Explicit Dim x%, y% Private Sub Command1_Click() x = 4: y = 5 Call p(y, x): Print x, y Call p(x, x): Print x, y Call p(y, x): Print x, y End Sub Private Sub p(x%, ByVal y%) y = x + y : x = y Mod 4 Print x, y, End Sub 单步调试 第一次调用p过程,将实参y按地址方式传递给对应位置的形参x,将实参x按值方式传递给形参y,由于按地址方式传递的形参x的值在过程中改变为1,所以当过程调用结束后,对应的实参y也变成1,而按值传递的实参x值不变 第二次调用p过程,将实参x按地址方式传递给形参x,将实参x按值方式传递给形参y,由于按地址方式传递的形参x的值在过程中改变为0,所以当过程调用结束后,对应的实参x变成0 两个模块级变量x、y,在过程p中定义了过程级的形参的同名变量x、y。注意:参数传递按对应位置进行形实结合,并非名字;p过程定义的第一个形参是按地址方式的,第二个是按值传递的 第三次调用p过程,将实参y按地址方式传递给形参x,将实参x按值方式传递给形参y,由于按地址方式传递的形参x的值在过程中改变为1,所以当过程调用结束后,对应的实参y变成1 单击命令按钮1的运行结果: 1 9 4 1 0 8 0 1 1 1 0 1 例题9-27 Private Sub Command1_Click() Dim a%, b As Integer a = 5: b = 2 Print f(a, b); f(a, b) Print f(b, b); f(f(a, b), b) Print a; b End Sub Public Function f(x%, y%) As Integer x = x – y If x 0 Then f = x Else f = y End If End Function 单步调试 f函数过程定义的形参是按地址方式的 第一

文档评论(0)

精品课件 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档