当前位置:文档之家› VB中sub过程与function函数的区别

VB中sub过程与function函数的区别

function是函数,sub是子程序,都可以传递参数,但函数有返回值,子程序没有
function 可以用自身名字返回一个值,sub 需定义别的变量,用传址方式传回值。

Sub 过程与Function 过程的区别:
1.Sub 过程定义时无需定义返回值类型,而Function 过程一般需要用“As 数据类型”定义函数返回值类型。

2.Sub 过程中没有对过程名赋值的语句,而Function 过程中一定有对函数名赋值的语句。

3.调用过程:调用Sub 过程与Function 过程不同。

调用Sub 过程的是一个独立的语句,而调用函数过程只是表达式的一部分。

Sub 过程还有一点与函数不一样,它不会用名字返回一个值。

但是,与Function过程一样,Sub 过程也可以修改传递给它们的任何变量的值。

4.调用Sub 过程有两种方法:
以下两个语句都调用了名为MyProc 的Sub 过程。

Call MyProc (FirstArgument, SecondArgument)
MyProc FirstArgument, SecondArgument
注意当使用Call 语法时,参数必须在括号内。

若省略Call 关键字,则也必须省略参数两边的括号。

在VB中,子过程与函数过程只有一处区别(要学好VB一定要记住),区别就是:子过程没有返回值,函数过程有返回值。

子过程用于编写一些代码的集合,函数过程用于建立函数。

我兴个例吧。

例如,我要做多处要做如下事件,我只要编写一个子过程,在其它事件下,我只要把子过程的名称写下就行了。

Private Sub ABC(A As Integer, B As Integer, C As Integer)
A = 1
B = 1
C = 1
End Sub
Private Sub Command1_Click()
ABC '按扭一就调用了该子过程了,而不用再写子过程的代码。

End Sub
Private Sub Command2_Click()
ABC '按扭二就调用了该子过程了,而不用再写子过程的代码。

End Sub
Private Sub Command3_Click()
ABC '按扭三就调用了该子过程了,而不用再写子过程的代码。

End Sub
函数例子:
如我要多处运用C=A+B这个算法,我可以编写这个函数:Private Function C (A As Integer, B As Integer) As Integer
C = A + B
End Function
Private Sub Command1_Click()
Text1.Text = C(5, 3) '这里就运用了函数C来计算5+3了。

End Sub
Private Sub Command2_Click()
Text1.Text = C(4, 2) '这里就运用了函数C来计算4+2了。

End Sub
完毕。

相关主题