当前位置: 代码迷 >> vbScript >> (QTP)vbscript中Function与Sub的差异
  详细解决方案

(QTP)vbscript中Function与Sub的差异

热度:570   发布时间:2013-01-23 10:44:50.0
(QTP)vbscript中Function与Sub的区别

一、Function与Sub概述:
Sub(子过程): sub是Subroutines的缩写,它的意思是子程序,它是将一段具有某种特定功能的语句区块单独编写成一个独立的程序,给予特定名称 。

Function(函数):表示每个输入值对应唯一输出值的一种对应关系 ,具备 Sub 的功能。

二、Function与Sub异同
相同点:
1)Sub和Function都是 vbscript 的过程,
2)可以传递参数,
3)是业务操作或业务处理的封装,都可以被重复调用。

不同点:
1)Sub无返回值,而Function可以有返回值。
2)调用Sub 和 Function也不同

三、举例[引用之前网上看的一个例子]:
大家应该都知道的谈恋爱的过程。有些人只想知道他谈恋爱的过程(Call Sub)。有些人既想知道过程,又要知道最终结果有没有结婚(Call Function)

假设:谈恋爱这个过程,由给MM打电话、陪MM逛街、给MM送礼物等等动作组成。

那么,Sub 谈恋爱()和Function 谈恋爱()有什么不同呢?

1)Sub 谈恋爱
Sub 谈恋爱()
   给MM打电话
   陪MM逛街
   给MM送礼物
End Sub

调用方法:因为Sub没有返回值,只要在代码中: Call 谈恋爱()

2)Function谈恋爱
Function 谈恋爱()
   给MM打电话
   陪MM逛街
   给MM送礼物
   If (mm愿意和他结婚) Then
       谈恋爱 = 成功
   Else
       谈恋爱 = 失败
   End If
End Function

调用方法:因为Function有返回值,所以可以把函数返回值赋给变量,只要在代码中:result = 谈恋爱()

 

这些内容,在我的自动化测试视频教程中,有有专门的一堂课程进行讲解。

  相关解决方案