Sub过程
VBScript中,过程被分为两类:Sub过程和Function过程。Sub过程是包含在Sub和End Sub语句之间的一组VBScript语句,执行操作但不返回值。Sub过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果Sub过程无任何参数,则Sub语句必须包含空括号 ( )。
基本信息
- 中文名
Sub过程
- 简介
包含在 Sub 和 End Sub 语句
- 举例
Sub ConvertTemp(data)
- 说明
Sub 过程默认为公用
说明
如没有显式地指定使用Public或Private,则Sub过程默认为公用,即它们对于Script中的所有其他过程都是可见的。Sub过程中局部变量的值在调用过程中不被保留。
所有可执行代码必须包含于过程中。不能在另一个Sub或Function过程中定义一个Sub过程。
使用Exit Sub语句可以立即从Sub过程中退出。程序继续执行调用Sub程的语句之后的语句。可以在Sub过程中任意位置出现任意个Exit Sub语句。
与Function过程相似之处是:Sub过程是一个可以获取参数,执行一系列语句以及可改变其参数的值的独立过程。而与Function过程不同之处是:Function过程可以返回值,而Sub过程不能用于表达式中。
可以使用过程名并跟随相应的参数列表来调用Sub过程。关于如何调用Sub过程的详细说明信息,请参阅Call 语句。
小心Sub过程可以是递归的,即该过程可以调用自己来完成某个给定的任务。但是递归可能会导致堆栈溢出。
在Sub过程中使用的变量分为两类:一类是在过程内显式声明的,另一类则不是。在过程内显式声明的变量(使用Dim或等效方法)总是局部变量。对于那些没有在过程中显式声明的变量也是局部的,除非在该过程外更高级别的位置显式地声明它们。
注意
过程可以使用没有在过程内显式声明的变量,但只要有任何script级定义的名称与之同名,就会产生名称冲突。如果过程中引用的未声明的变量与其他的过程、常数或变量的名称相同,则会认为过程引用的是Script级的名称。显式声明变量可以避免这类冲突,使用Option Explicit 语句可强制显式声明变量。
举例
例如:
Sub ConvertTemp(data)
temp = data/128
End Sub
Sub语句
描述
声明Sub过程的名称、参数以及构成其主体的代码。
语法