作者:[转载]  文章来源:http://www.alixixi.com/  更新时间:2005-12-13
 过程分类
在 vbscript 中,过程被分为两类:sub 过程和 function 过程。
sub 过程
sub 过程是包含在 sub 和 end sub 语句之间的一组 vbscript 语句,执行操作但不返回值。sub 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果sub 过程无任何参数,则 sub 语句必须包含空括号 ()。 

下面的 sub 过程使用两个固有的(或内置的)vbscript 函数,即 msgbox 和 inputbox,来提示用户输入信息。然后显示根据这些信息计算的结果。计算由使用vbscript 创建的 function 过程完成。此过程在以下讨论之后演示。 

sub converttemp()
temp = inputbox("请输入华氏温度。", 1)
msgbox "温度为 " & celsius(temp) & " 摄氏度。"
end sub

function 过程
function 过程是包含在 function 和 end function 语句之间的一组 vbscript 语句。function 过程与 sub过程类似,但是 function 过程可以返回值。function 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果 function 过程无任何参数,则function 语句必须包含空括号 ()。function 过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。function 返回值的数据类型总是variant。 

在下面的示例中,celsius 函数将华氏度换算为摄氏度。sub 过程 converttemp 调用此函数时,包含参数值的变量被传递给函数。换算结果返回到调用过程并显示在消息框中。

sub converttemp()
temp = inputbox("请输入华氏温度。", 1)
msgbox "温度为 " & celsius(temp) & " 摄氏度。"
end sub

function celsius(fdegrees)
celsius = (fdegrees - 32) * 5 / 9
end function

过程的数据进出
给过程传递数据的途径是使用参数。参数被作为要传递给过程的数据的占位符。参数名可以是任何有效的变量名。使用 sub 语句或 function 语句创建过程时,过程名之后必须紧跟括号。括号中包含所有参数,参数间用逗号分隔。例如,在下面的示例中,fdegrees是传递给 celsius 函数的值的占位符: 

function celsius(fdegrees)
celsius = (fdegrees - 32) * 5 / 9
end function

要从过程获取数据,必须使用 function 过程。请记住,function 过程可以返回值;sub 过程不返回值。 

在代码中使用 sub 和 function 过程
调用 function 过程时,函数名必须用在变量赋值语句的右端或表达式中。例如: 

temp = celsius(fdegrees)
或 

msgbox "温度为 " & celsius(fdegrees) & " 摄氏度。"


调用 sub 过程时,只需输入过程名及所有参数值,参数值之间使用逗号分隔。不需使用 call 语句,但如果使用了此语句,则必须将所有参数包含在括号之中。

下面的示例显示了调用 myproc 过程的两种方式。一种使用 call 语句;另一种则不使用。两种方式效果相同。 

call myproc(firstarg, secondarg)
myproc firstarg, secondarg

请注意当不使用 call 语句进行调用时,括号被省略。 
<

网友评论
相关搜索
阿里西西Baidu.com搜索