- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
过程和函数 2009-4-1 Subroutines and Functions Indivisible units of code that contains a group of statements that perform a predefined activity and that should be activated as one unit. Subroutines are called and return no value while functions are activated by assigning the value that they return. Both sub-routines and functions are in fact methods. Subroutines Invoked, that is activated, either with the Call statement or just by name. Subroutines are defined with the Sub statement. A subroutine may receive parameters, corresponding to the arguments are defined in the Sub statement. ByRef and ByVal When an argument is defined ByVal 过程从形式参数接受值,不带回值(不知道变量的地址)。 When an argument is defined ByRef 能带回参数值(知道变量的地址)。 ByVal指的是按值传递,程序会将被传递的参数的值拷贝一份存在一个临时区域中参与调用过程的执行,在代码中即使使用a=a+1改变参数值的语句,实际只改变了它的副本内容,而并没有真正改变a的内容; ByRef,是指按地址传递参数,是缺省的方式。在被调用时传递给调用函数的是其地址,在调用函数中对这个参数做出的任何改变都直接改变了它的值,程序会根据参数存放的地址直接对它进行修改,即使跳出被调函数或过程这个改变还是永久的。 Example 建立SUB过程的方法 通用过程:在模块中建立 .VB(Module-End Module) 步骤 项目菜单 添加模块 添加新项 在模板中选择”模块” …… 练习1 在主程序读取INPUTBOX中的输入生成数据个数 在子程序中生成这个个数的随机数,并将这些数的最大\最小\平均值返回主程序,并显示出来. 参数数组 当需要数量不确定的参数时,可声明一个“参数数组”。 ByRef/ByVal 形参数组 as 类型 允许过程接受参数的值数组,不需知道参数数组中的元素数。 每次过程调用都单独确定数组的大小。 reDim/或赋值 事件过程 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim x(3) As Single Dim y(4) As Integer Dim i As Integer Call mySub3(x, y) For i = 0 To UBound(x) lstX.Items.Add(x(i)) Next For i = 0 To UBound(y) lstY.Items.Add(y(i)) Next End Sub 过程 Public Sub mySub3(ByRef a() As Single, ByVal b() As Integer) Dim i As Integer For i = 0 To UBound(a) Randomize() a(i) = 10 * Rnd() Next For i = 0 To UBound(b) Randomize() b(i) = 20 * Rnd() Next End Sub Private and Public Subroutines When the subroutine is Private 只在声明的范围内有作用。 Protected 在它的类或继承来的类范围内有效。 Friend It is acce
您可能关注的文档
最近下载
- 老年妇科患者围手术期管理中国专家共识(2024年版).pptx VIP
- 2023《关于党的建设的重要思想》微党课精品课件.ppt VIP
- 老年妇科患者围手术期管理中国专家共识(2024版)解读PPT课件.pptx VIP
- 生态系统课件课件.ppt VIP
- 《西方艺术鉴赏》课件.ppt VIP
- 成人肠造口护理-2019中华护理学会团体标准.pptx VIP
- 上海市绿色社区创建状况调查和发展对策研究.pdf VIP
- 第一现场震撼世界的不朽影像黑镜头精选珍藏本 阿夏 285页.pdf VIP
- 心血管-肾脏-代谢综合征患者的综合管理中国专家共识2025解读-1.pptx
- 2024年国网新疆电力有限公司高校毕业生招聘450人(第二批)笔试参考题库附带答案详解.doc
文档评论(0)