是的,sub 和Function函数的区别是一个没有返回值和一个有返回值。
下面这例子,是求守形数.如5^2=25,6^2=36 就是守形数. 守形数(N^2=xxN)就是原来是几位,然后经过平方后,取和原数的位数一样的最后几位,来比较是否相等。
Private Sub Command1_Click()
Dim i As Integer
For i = 1 To 100
Print f(i);
Next i
End Sub
Function f(n As Integer)
Dim k As Integer
k = 10
Do While (n Mod k <> n)
k = k * 10
Loop
If (n = (n ^ 2 Mod k)) Then f = n
End Function
其实是这样的:
VB.net中有三个类型的过程:Sub.Function.Property.
Sub过程执行操作,但不向调用他的过程返回值.例如,时间处理程序都是Sub过程.他们在响应时间时执行.
Function可以想调用他的过程返回值.例如,MessageBox.show语句就是一个Function过程.
Property过程可以返回类、结构或模块属性的值,或向他们赋值。
现在清楚了吧