Visual Basic Scripting Edition | 語言參考 |
VBScript 過程在 VBScript 中,過程被分為兩類:Sub 過程和 Function 過程。 Sub 過程Sub 過程是包含在 Sub 和 End Sub 語句之間的一組 VBScript 語句,執(zhí)行操作但不返回值。Sub 過程可以使用參數(shù)(由調(diào)用過程傳遞的常數(shù)、變量或表達式)。如果 Sub 過程無任何參數(shù),則 Sub 語句必須包含空括號 ()。 下面的 Sub 過程使用兩個固有的(或內(nèi)置的)VBScript 函數(shù),即 MsgBox 和 InputBox,來提示用戶輸入信息。然后顯示根據(jù)這些信息計算的結(jié)果。計算由使用 VBScript 創(chuàng)建的 Function 過程完成。此過程在以下討論之后演示。 Sub ConvertTemp()
temp =InputBox(" 請輸入華氏溫度。", 1)
MsgBox " 溫度為 " & Celsius(temp) & " 攝氏度。" End Sub
Function 過程Function 過程是包含在 Function 和 End Function 語句之間的一組 VBScript 語句。Function 過程與 Sub 過程類似,但是 Function 過程可以返回值。Function 過程可以使用參數(shù)(由調(diào)用過程傳遞的常數(shù)、變量或表達式)。如果 Function 過程無任何參數(shù),則 Function 語句必須包含空括號 ()。Function 過程通過函數(shù)名返回一個值,這個值是在過程的語句中賦給函數(shù)名的。Function 返回值的數(shù)據(jù)類型總是 Variant。 在下面的示例中,Celsius 函數(shù)將華氏度換算為攝氏度。Sub 過程 ConvertTemp 調(diào)用此函數(shù)時,包含參數(shù)值的變量被傳遞給函數(shù)。換算結(jié)果返回到調(diào)用過程并顯示在消息框中。 Sub ConvertTemp()
temp =InputBox(" 請輸入華氏溫度。", 1)
MsgBox " 溫度為 " & Celsius(temp) & " 攝氏度。" End Sub Function Celsius(fDegrees) Celsius =(fDegrees - 32) * 5 / 9 End Function
過程的數(shù)據(jù)進出給過程傳遞數(shù)據(jù)的途徑是使用參數(shù)。參數(shù)被作為要傳遞給過程的數(shù)據(jù)的占位符。參數(shù)名可以是任何有效的變量名。使用 Sub 語句或 Function 語句創(chuàng)建過程時,過程名之后必須緊跟括號。括號中包含所有參數(shù),參數(shù)間用逗號分隔。例如,在下面的示例中,fDegrees 是傳遞給 Celsius 函數(shù)的值的占位符: Function Celsius(fDegrees)
Celsius =(fDegrees - 32) * 5 / 9
End Function
要從過程獲取數(shù)據(jù),必須使用 Function 過程。請記住,Function 過程可以返回值;Sub 過程不返回值。 在代碼中使用 Sub 和 Function 過程調(diào)用 Function 過程時,函數(shù)名必須用在變量賦值語句的右端或表達式中。例如: Temp =Celsius(fDegrees)
或 MsgBox " 溫度為 " & Celsius(fDegrees) & " 攝氏度。"
調(diào)用 Sub 過程時,只需輸入過程名及所有參數(shù)值,參數(shù)值之間使用逗號分隔。不需使用 Call 語句,但如果使用了此語句,則必須將所有參數(shù)包含在括號之中。 下面的示例顯示了調(diào)用 MyProc 過程的兩種方式。一種使用 Call 語句;另一種則不使用。兩種方式效果相同。 Call MyProc(firstarg, secondarg)
MyProc firstarg, secondarg
請注意當不使用 Call 語句進行調(diào)用時,括號被省略。
返回首頁
|