![]() ![]() |
|
全国计算机等级考试二级VB考点分析之过程(2) | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 14:47:19 文章录入:杜斌 责任编辑:杜斌 | |
|
|
传值就是通过值传送实际参数,即传送实参的值而不是传送它的地址。在这种情况下,系统扭需要传送的变量复制到一个临时的单元中,然后把该临时单元的地址传送给被调用的通用过程。由于通过过程没有访问变量(实参)的原始地址,因此不会改变原来变量的值,所有的变化都是在变量的副本上进行的。 考点9 数组参数的传送 Visual Basic允许把数组作为实参传送到过程中。用数组作为过程的参数时,应在数组名的后面加上一对括号,以免与普通变量相混淆。 除遵循参数传送的一般规则外,还应注意以下两点: (l)为了把一个数组的全部元素传递给一个过程,应将数组名分别放入实参表和形参表中,并略去数组的上下界,但括号不能省略。 (2)如果不需要把整个数组传递给通用过程,可以只传递指定的单个元素,这需要在数组名后面的括号中定上指定的元素下标。 6.4 可选参数和可变参数 Visual Basic 6. 0提供了十分灵活和安全的参数传送方式,允许使用可选参数和可变参数。在调用一个过程时,可以向过程传送可选的参数或者任意数量的参数。 考点10 可选参数 在调用一个过程时,有时并不是每次都要传递所有的参数。有些参数的存在是为了提供某项功能,但这项功能不是每次调用该过程时都需要的或者在调用这个过程时,某个参数在绝大部分时间内都使用同一个值,对于其他的值只有在特殊的情况下才使用。 使用可选参数时还应注意两点: (1)如果某个参数被指定为可选参数,那么它后面的参数必须都是可选的。 (2)Optional关键字可以和ByVal关键字一起使用。 考点11 可变参数 在使用可变参数时应注意以下5点: (1)ParamArray关键字只能用于参数列表中的最后一个参数。 (2)用ParamArray关键字声明的参数数组只能是Variant类型。 (3)ParamArray关键字不能和ByVal关键字,ByRef关键字以及Optional关键字一起使用。 (4)如果使用ParamArray关键字声明可变个数参数,那么其他的参数都不能被声明为可选的。 (5)用ParamArray关键字声明的参数数组,无论是否使用了Option Basel语句,它的下界总是0。 6.5 对象参数 考点12 对象参数 和传统的程序设计语言不同,Visual Basic允许用对象作为参数,即窗体或控件作为通用过程的参数。在有些情况下,这可以简化程序设计,提高效率。实际上,在Visual Basic中还可以向过程传送对象,包括窗体和控件。 对象作为参数与用其他数据类型作为参数的过程没有什么区别,其格式为: Sub过程名(形式参数表) 语句块 [Exit Sub] … End Sub “形式参数表”中的形参的类型通常为Control或Form注意,在调用含有对象的过程时,对象只能通过传地址方式传送。因此在定义过程时,不能在其参数前加关键字ByVal。 6.6 局部内存分配 考点13 局部内存分配 有时候,在过程结束时,可能不希望失去保存在局部变量中的值。如果把变量声明为全局变量或模块级变量,则可解决这个问题。但如果声明的变量只在一个过程中使用,则这种方法并不好。为此,Visual Basic提供了一个Static语句,其格式为: Static变量表 其中“变量表”的格式如下: 变量[()][As类型][,变量[()][As类型]]… 可以看出,Static语句的格式与Dim语句完全一样,但Static语句只能出现在事件过程、Sub过程或Function过程中。在过程中的Static变量只有局部的作用域,即只在本过程中可见,但可以和模块级变量一样,即使过程结束后,其值仍能保留。 在程序设计过程中,Static语句常用于以下两种情况: (1)记录一个事件被触发的次数,即程序运行时事件发生的次数。 (2)用于开关切换,即原来为开,将其改为关,反之亦然。 6.7 Shell函数 考点14 shell函数 在Visual Basic中不但可以调用通用过程,而且可以调用各种应用程序。也就是说,凡是能在Windows下运行的应用程序,基本上都可以在Visual Basic中调用。这一功能通过Shell函数来实现。 Shell函数的格式如下: Shell(命令字符串[,窗口类型]) 其中“命令字符串”是要执行的应用程序的文件名(包括路径),它必须是可执行文件,其扩展名为.COM,.EXE,.BAT或.PIF,其他文件不能用Shell函数执行。 |
|
![]() ![]() |