白云岛资源网 Design By www.pvray.com
Function 语句
声明 Function 过程的名称、参数以及构成其主体的代码。
[Public [Default]| Private] Function name [(
arglist
)]
[statements]
[name = expression]
[Exit Function]
[statements]
[name = expression]
End Function 参数
Public
表示 Function 过程可被所有脚本中的所有其他过程访问。
Default
只与 Class 块中的 Public 关键字一起使用来表示 Function 过程是类的默认方法。如果在一个类中指定了不止一个 Default 过程,就有错误发生。
Private
表示 Function 过程只可被声明它的脚本中的其他过程访问或者如果函数是一个数据类,那么 Function 过程只能被该类中的其他过程访问。
name
Function 的名称,遵循标准的变量命名规则。
arglist
代表调用时要传递给 Function 过程的参数的变量列表。用逗号隔开多个变量。
statements
在 Function 过程的主体中执行的任意语句组。
expression
Function 的返回值。
arglist 参数包含下列语法和部分:
[ByVal | ByRef] varname[( )]
参数
ByVal
表示该参数是按值方式传递的。
ByRef
表示该参数按引用方式传递。
varname
代表参数变量的名称;遵循标准的变量命名规则。
说明
如没有显式指定使用 Public 或 Private,则 Function 过程默认为公用,即它们对于脚本中的所有其他过程是可见的。Function 中局部变量的值在对过程的调用中不被保留。
不能在任何其他过程(例如,Sub 或 Property Get)中定义 Function 过程。
使用 Exit Function 语句可以从 Function 过程中立即退出。程序继续执行调用 Function 过程的语句之后的语句。可在 Function 过程的任何位置出现任意个 Exit Function 语句。
与 Sub 过程类似,Function 过程是可以获取参数、执行一系列语句并改变其参数值的独立过程。与 Sub 过程的不同之处是:当要使用由函数返回的值时,可以在表达式的右边使用 Function 过程,这与内部函数的使用方式一样,例如 Sqr、Cos 或 Chr。
在表达式中,可以通过使用函数名,并在其后用圆括号给出相应的参数列表来调用 Function 过程。有关调用 Function 过程的详细信息,请参阅 Call 语句。
警告 Function 过程可以是递归的,即该过程可以调用自身以完成某个给定的任务。但是,递归可能会导致堆栈溢出。
要从函数返回一个值,只需将值赋给函数名。在过程的任意位置都可以出现任意个这样的赋值。如果没有给 name 赋值, 则过程将返回一个默认值:数值函数返回 0,字符串函数返回零长度字符串 ("")。如果在 Function 中没有对象引用被指定给 name(使用 Set),则返回对象引用的函数将返回 Nothing。
下面的样例说明如何给一个名为 BinarySearch 的函数赋返回值。在此样例中,将 False 赋给了该函数名,表示没有找到某个值。
Function BinarySearch(. . .)
. . .
' 未找到该值。返回 False 值。
If lower > upper Then
BinarySearch = False
Exit Function
End If
. . .
End Function在 Function 过程中使用的变量分为两类:一类是在过程内显式声明的,另一类则不是。在过程内显式声明的变量(使用 Dim 或等效方法)总是过程的局部变量。被使用但没有在过程中显式声明的变量也是局部变量,除非在该过程外更高级别的位置显式声明它们。
警告 过程可以使用没有在过程内显式声明的变量,但只要有任何 script 级定义的名称与之同名,就会产生名称冲突。如果过程中引用的未声明的变量与其他的过程、常数或变量的名称相同,则会认为过程引用的是脚本级的名称。要避免这类冲突,请使用 Option Explicit 语句可强制显式声明变量。
警告 VBScript 可能会重新排列数学表达式以提高内部效率。当 Function 过程修改数学表达式中变量的值时,应避免在同一表达式中使用该函数。
声明 Function 过程的名称、参数以及构成其主体的代码。
[Public [Default]| Private] Function name [(
arglist
)]
[statements]
[name = expression]
[Exit Function]
[statements]
[name = expression]
End Function 参数
Public
表示 Function 过程可被所有脚本中的所有其他过程访问。
Default
只与 Class 块中的 Public 关键字一起使用来表示 Function 过程是类的默认方法。如果在一个类中指定了不止一个 Default 过程,就有错误发生。
Private
表示 Function 过程只可被声明它的脚本中的其他过程访问或者如果函数是一个数据类,那么 Function 过程只能被该类中的其他过程访问。
name
Function 的名称,遵循标准的变量命名规则。
arglist
代表调用时要传递给 Function 过程的参数的变量列表。用逗号隔开多个变量。
statements
在 Function 过程的主体中执行的任意语句组。
expression
Function 的返回值。
arglist 参数包含下列语法和部分:
[ByVal | ByRef] varname[( )]
参数
ByVal
表示该参数是按值方式传递的。
ByRef
表示该参数按引用方式传递。
varname
代表参数变量的名称;遵循标准的变量命名规则。
说明
如没有显式指定使用 Public 或 Private,则 Function 过程默认为公用,即它们对于脚本中的所有其他过程是可见的。Function 中局部变量的值在对过程的调用中不被保留。
不能在任何其他过程(例如,Sub 或 Property Get)中定义 Function 过程。
使用 Exit Function 语句可以从 Function 过程中立即退出。程序继续执行调用 Function 过程的语句之后的语句。可在 Function 过程的任何位置出现任意个 Exit Function 语句。
与 Sub 过程类似,Function 过程是可以获取参数、执行一系列语句并改变其参数值的独立过程。与 Sub 过程的不同之处是:当要使用由函数返回的值时,可以在表达式的右边使用 Function 过程,这与内部函数的使用方式一样,例如 Sqr、Cos 或 Chr。
在表达式中,可以通过使用函数名,并在其后用圆括号给出相应的参数列表来调用 Function 过程。有关调用 Function 过程的详细信息,请参阅 Call 语句。
警告 Function 过程可以是递归的,即该过程可以调用自身以完成某个给定的任务。但是,递归可能会导致堆栈溢出。
要从函数返回一个值,只需将值赋给函数名。在过程的任意位置都可以出现任意个这样的赋值。如果没有给 name 赋值, 则过程将返回一个默认值:数值函数返回 0,字符串函数返回零长度字符串 ("")。如果在 Function 中没有对象引用被指定给 name(使用 Set),则返回对象引用的函数将返回 Nothing。
下面的样例说明如何给一个名为 BinarySearch 的函数赋返回值。在此样例中,将 False 赋给了该函数名,表示没有找到某个值。
Function BinarySearch(. . .)
. . .
' 未找到该值。返回 False 值。
If lower > upper Then
BinarySearch = False
Exit Function
End If
. . .
End Function在 Function 过程中使用的变量分为两类:一类是在过程内显式声明的,另一类则不是。在过程内显式声明的变量(使用 Dim 或等效方法)总是过程的局部变量。被使用但没有在过程中显式声明的变量也是局部变量,除非在该过程外更高级别的位置显式声明它们。
警告 过程可以使用没有在过程内显式声明的变量,但只要有任何 script 级定义的名称与之同名,就会产生名称冲突。如果过程中引用的未声明的变量与其他的过程、常数或变量的名称相同,则会认为过程引用的是脚本级的名称。要避免这类冲突,请使用 Option Explicit 语句可强制显式声明变量。
警告 VBScript 可能会重新排列数学表达式以提高内部效率。当 Function 过程修改数学表达式中变量的值时,应避免在同一表达式中使用该函数。
白云岛资源网 Design By www.pvray.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
白云岛资源网 Design By www.pvray.com
暂无评论...
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?