您的位置:首页 > 编程语言 > VB

【学习随笔】由UFT脚本语言对VBS中Sub与Function简单区别

2016-09-22 00:00 218 查看
举个形象的例子,过程(Sub)就是我拍了一下桌子,而函数(Function)就是我拍了一下桌子,结果是手疼。

####定义
Sub:过程

Function:函数
####语法
Sub:

Sub subName(parameter1,parameter2,...)
函数体
End Sub

Function:

Function functionName(parameter1,parameter2,...)
函数体
functionName=result value
End Function

####调用方法
Sub:

subName  parameter1,parameter2,...

Function:

result=functionName(parameter1,parameter,...)
functionName  parameter1,parameter2,...

####区别
由此,Function一般是有返回值的,而Sub一定是没有返回值
####注意
Sub与Function均可有返回值。对于返回方式有两种:过程或函数返回,即分配与过程或函数同名的返回变量地址。Function分配,但Sub不分配。VB用此方式加以区分,VC则用void声明不用分配。

如p=a(),如果a()是sub则什么也得不到,还会报错。但如果是函数则会得到数值。其次,参数返回,VB中缺省用地址传参,即能返回。但声明为ByVal即值传参,则不可返回,所以,不存在灵活性的差别。比如函数function b(a,b), 调用时可以b m, n也可以p=b(m,n).

实际,如果确认不会失败,才能用Sub,否则,必须要用Function以确认是否成功或取得返回值。所以编程,应少用SUB,少用 subName 参数1, 参数2,...的调用方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  vbs