VB 中Sub和Function的區別


Sub可以理解為執行一個過車,一個操作。

Function在執行完過后,還要返回一個結果。

Sub:過程;Function:函數,可以帶返回值。

語法:

       Sub SubName(參數1,參數2,...)

        ...

       End Sub

 

       Function FunctionName(參數1,參數2,...)

       ...

      FunctionName=返回值

      End Function

 

  調用時:

      Sub 只能用: SubName(參數1,參數2,...)              變量=FunctionName(參數1,參數2,...)

     以上均未講出根本:

     Sub與Function均可以有返回值。所以首先要講清楚返回方式:有兩種,過程或函數返回,即分配與過程或函數同名的返回變量地址。Function分配,但Sub不分配。VB有此方式加以區分,VC則用void聲明不用分配。即如p=aa(),若aa()時sub則什么也的不懂,還會報錯。但函數則會得到相應的數值。其次,參數返回,VB中缺省用地址傳參,即能返回。但聲明為BYVAL即值傳參,則不可返回,所以,不存在靈活性的差別。比如函數function bb(a,b),
調用時可以bb m, n也可以p=bb(m,n).
實際,如果確認不會失敗,才能用SUB,否則,必須要用FUNCTION以確認是否成功或取得返回值。所以編程,應少用SUB,少用 SubName 參數1,
參數2,...的調用方式。


sub是過程不需要返回值,function是函數,需要返回值,如下:
Function
NameOfFunction(parameter1, parameter2)
'some code
NameOfFunction = return
value
End Function
________________________________________________
Sub
NameOfSubRoutine(parameter1, parameter2)
'some code...
End Sub

 

   

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM