共用方式為


如何:定義程式的參數 (Visual Basic)

參數可讓呼叫程式代碼在呼叫程式時將值傳遞至程式。 您可以宣告程式的每個參數,方式與宣告變數的方式相同,並指定其名稱和數據類型。 您也可以指定傳遞機制,以及參數是否為選擇性。

如需詳細資訊,請參閱 程序參數和自變數

定義程序參數

  1. 在程式宣告中,將參數名稱新增至程式的參數清單,並以逗號分隔它與其他參數。

  2. 決定參數的數據類型。

  3. 請遵循參數名稱搭配 As 子句來指定數據類型。

  4. 決定您想要用於 參數的傳遞機制。 一般而言,除非您希望程式能夠在呼叫程式代碼中變更其值,否則您會以傳值方式傳遞參數。

  5. 在參數名稱前面加上 ByValByRef ,以指定傳遞機制。 如需詳細資訊,請參閱 值傳遞與參照傳遞之間的差異

  6. 如果參數是選擇性的,請在傳遞機制前面加上 Optional ,並以等號 (=) 和預設值跟隨參數數據類型。

    下列範例會定義具有三個 Sub 參數的程式大綱。 前兩個是必要的,第三個是選擇性的。 參數宣告會以逗號分隔在參數清單中。

    Sub updateCustomer(ByRef c As customer, ByVal region As String, 
      Optional ByVal level As Integer = 0)
      ' Insert code to update a customer object.
    End Sub
    

    第一個 customer 參數會接受 物件,而且 updateCustomer 可以直接更新傳遞至 c 的變數,因為自變數會傳遞 ByRef。 程序無法變更最後兩個自變數的值,因為它們是傳遞 ByVal

    如果呼叫程式代碼未提供 參數的值,Visual Basic 會將它設定為 level 預設值 0。

    如果類型檢查開關(Option Strict Statement)設為 Off,當您定義參數時,As 子句是選擇性的。 不過,如果有一個參數使用 As 子句,則所有參數都必須使用子句。 如果類型檢查開關為 On,那麼每個參數定義都需要 As 子句。

    指定所有程式設計元素的數據類型稱為 strong typing(強型別)。 當您設定 Option Strict On時,Visual Basic 會強制執行強式輸入。 基於下列原因,強烈建議這麼做:

    • 它可為您的變數和參數啟用 IntelliSense 支援。 這可讓您在程式代碼中輸入時查看其屬性和其他成員。

    • 它可讓編譯程式執行類型檢查。 這有助於攔截因溢位等錯誤而可能在執行時失敗的語句。 它也會偵測並攔截在物件上執行不支援的方法呼叫。

    • 這可加快程式代碼的執行速度。 其中一個原因是,如果您未指定程式設計專案的數據類型,Visual Basic 編譯程式會將類型指派給它 Object 。 您編譯的程式代碼可能必須在 Object 與其他數據類型之間進行來回轉換,這會降低效能。

另請參閱