Sub過程

Sub過程

Sub 過程是之間的一組 VBScript 語句,執行操作但不返回值。Sub 過程可以使用參數(由調用過程傳遞的常數、變數或表達式)。如果 Sub 過程無任何參數,則 Sub 語句必須包含空括弧 ( )。

定義

VBScript 中,過程被分為兩類:Sub 過程和 Function 過程。

例如:

temp = data/128

End Sub

Sub 語句

描述

聲明 Sub 過程的名稱、參數以及構成其主體的代碼。

語法

[Public | Private] Sub name [(arglist)]

[statements]

[Exit Sub]

[statements]

End Sub

Sub 語句的語法包含以下部分

部分 描述

Public 表示 Sub 過程可被所有 Script 中的所有其他過程訪問。

Private 表示 Sub 過程只可被聲明該過程的 Script 中的其他過程訪問。

Name Sub 的名稱,遵循標準變數命名約定。

Arglist 代表在調用時要傳遞給 Sub 過程的參數的變數列表。用逗號隔開多個變數。

Statements 在 Sub 過程主體內所執行的任何語句組。

arglist 參數包含下列語法和部分: varname[( )]

部分 描述

ByVal 表示該參數按值傳遞。

ByRef 表示該參數按引用傳遞。

Varname 代表參數的變數名稱,遵循標準變數命名約定。

說明及注意

如沒有顯式地指定使用 Public 或 Private,則 即它們對於 Script 中的所有其他過程都是可見的。Sub 過程中局部變數的值在調用過程中不被保留。

所有可執行代碼必須包含於過程中。不能在另一個 Sub 或 Function 過程中定義一個 Sub 過程。

使用 Exit Sub 語句可以立即從 Sub 過程中退出。程式繼續執行調用 Sub 過程的語句之後的語句。可以在 Sub 過程中任意位置出現任意個 Exit Sub 語句。

與 Function 過程相似之處是:Sub 過程是一個可以獲取參數,執行一系列語句以及可改變其參數的值的獨立過程。而與 Function 過程不同之處是:Function 過程可以返回值,而 Sub 過程不能用於表達式中。

可以使用過程名並跟隨相應的參數列表來調用 Sub 過程。關於如何調用 Sub 過程的詳細說明信息,請參閱 Call 語句。

小心 Sub 過程可以是遞歸的,即該過程可以調用自己來完成某個給定的任務。但是遞歸可能會導致堆疊溢出。

在 Sub 過程中使用的變數分為兩類:一類是在過程內顯式聲明的,另一類則不是。在過程內顯式聲明的變數(使用 Dim 或等效方法)總是局部變數。對於那些沒有在過程中顯式聲明的變數也是局部的,除非在該過程外更高級別的位置顯式地聲明它們。

注意

過程可以使用沒有在過程內顯式聲明的變數,但只要有任何 script 級定義的名稱與之同名,就會產生名稱衝突。如果過程中引用的未聲明的變數與其他的過程、常數或變數的名稱相同,則會認為過程引用的是Script 級的名稱。顯式聲明變數可以避免這類衝突,使用 Option Explicit 語句可強制顯式聲明變數。

相關詞條

相關搜尋

熱門詞條

聯絡我們