- 1
- 0
- 约6.02千字
- 约 50页
- 2016-10-26 发布于广东
- 举报
8.5.2 过程的递归调用 当一个过程直接或间接地调用自己,就称之为过程的递归调用。 采用递归调用的方法来解决问题时,必须符合以下两个条件: (1)可以将需要解决的问题转化为一个新的问题,而这个新的问题的解决方法与原来的解法相同。 (2)有一个明确的结束递归的条件(终止条件),否则过程将会永远“递归”下去。 * 8.6 模块 * 8.6.1 窗体模块 查看窗体模块的内容 * “添加窗体”对话框中”的新建“选项卡” * 8.6.2 标准模块 简单的应用程序通常只有一个窗体,这时所有的代码都存放在该窗体模块中。而当应用程序庞大而复杂时,就需要多个窗体。在多个窗体结构的应用程序中,有些程序员创建的通用过程需要在多个不同的窗体中,为了不在每个需要调用该通用过程的窗体重复输入代码,就需要创建标准模块,标准模块包含公共代码的过程。 * 标准模块保存在扩展名为.bas的文件中,缺省时应用程序中不包含标准模块。标准模块可包含公共或模块级的变量、常量、类型、外部过程和全局过程的全局声明或模块级声明。缺省时,标准模块中的代码不必绑定在特定的应用程序上,在许多不同的应用程序中可以重用标准模块。在标准模块中可以存储通用过程,但是不能存储事件过程。 * 8.6.3 类模块 在VB中,类模块(文件扩展名.cls)是面向对象编程的基础。程序员可在类模块中编写代码建立新对象,这些新对象可包含自定义的属性和方法,可在应用程序内的过程中使用。实际上,窗体本身正是这样的一种类模块,在其上可安置控件、可显示窗体窗口。 类模块与标准模块的不同之处在于:标准模块仅仅含有代码,而类模块既含有代码又含有数据。 * 8.7 过程与变量的作用域 * 8.7.1 过程的作用域 过程的作用域分为:窗体/模块级和全局级。 * 1.窗体/模块级 指在某个窗体或标准模块内定义的过程,定义的子过程或函数过程前加有Private关键字,此过程只能被本窗体(在本窗体内定义)或本标准模块(在本标准模块内定义)中的过程调用。 * 2.全局级 指在窗体或标准模块中定义的过程,其默认是全局级的,也可加Public进行说明。全局级过程可供该应用程序的所有窗体及所有标准模块中的过程调用,但是根据过程所处的位置不同,其调用的方式有所区别: (1)在窗体定义的过程:外部过程需要调用时,必须在过程名前加该过程所处的窗体名。 (2)在标准模块定义的过程:外部过程均可调用,但是过程名必须唯一,否则需要在过程名前加标准模块名。 * 不同作用范围的两种过程定义及调用规则 * 作用范围 模 块 级 全 局 级 窗 体 标准模块 窗 体 标准模块 定义方式 过程名前加Private 过程名前加Public或默认 能否被本模块其它过程调用 能 能 能 能 能否被本应用程序其它模块调用 不能 不能 能,但须在过程名前加窗体名 能,但过程名须唯一,否则需加标准模块名 8.7.2 变量的作用域 不同作用范围得中变量声明及使用规则 * 作用范围 局部变量 窗体/模块级变量 全局变量 窗 体 标准模块 声明方式 Dim、Static Dim、Private Public 声明位置 在过程体内 窗体/模块的“通用声明”段 窗体/模块的“通用声明”段 能否被本模块的其它过程存取 不能 能 能 能否被其它模块存取 不能 不能 能,但需在变量名前加窗体名 能 1.局部变量 指在过程内Dim语句声明的变量(或不声明直接使用的变量),只能在本过程中使用的变量,其它过程不可访问。局部变量随过程的调用而分配存储单元,并进行变量的初始化,在此过程体内进行数据的存取,一旦该过程执行结束,该变量的内容自动消失,所占用的存储单元被释放。不同的过程中可以有同名的变量,彼此互不相干,就像两个班中可以出现同名字的学生一样。使用局部变量,有利于程序的调试。 * 2.窗体/模块级变量 指在一个窗体/模块的任何过程外,即在“通用声明 ”段中用Private或Dim语句声明的变量,可被本窗体/模块中的任何过程访问。 * 3.全局变量 指只能在标准模块的任何过程或函数外,即在“通用声明”段中用Public语句声明的变量,可被应用程序的任何过程或函数访问。全局变量的值在整个应用程序中始终不会消失和不会重新初始化,只有当整个应用程序执行结束时,才会消失。例7.22中只有一个窗体模块,使用的是窗体变量,但是当有多个模块时,a、b、c就不能被其他模块的过程单元所访问,否则就应定义为全局变量。 * 8.8 变量的生存期 从变量的作用空间来说,变量有作用范围;而从变量的作用时间来说,变量有生存期。 假设过程内有一个变量,当程序执行进入该过程体内时,系统要分配给该变量一定的内存单元,一旦执行退出该过程,那么变量所占有的内存单元是被释放
您可能关注的文档
- 新Visual Basic程序设计 教学课件 邱寄帆 第07章.ppt
- 新Visual Basic程序设计 教学课件 邱寄帆 第08章.ppt
- 新Visual Basic程序设计 教学课件 邱寄帆 第09章.ppt
- 新Visual Basic程序设计 教学课件 邱寄帆 第10章.ppt
- 新Visual Basic程序设计 教学课件 邱寄帆 第11章.ppt
- 新Visual Basic程序设计 教学课件 邱寄帆 第12章.ppt
- 新Visual Basic程序设计 教学课件 邱寄帆 第13章.ppt
- 新Visual Basic程序设计 教学课件 邱寄帆 第14章.ppt
- 新Visual Basic程序设计 教学课件 邱寄帆 第15章.ppt
- 新Visual Basic程序设计 教学课件 银红霞 第1章 Visual Basic概述.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
原创力文档

文档评论(0)