Switch 函式
更新:2007 年 11 月
評估運算式清單,並傳回與清單中第一個為 True 之運算式對應的 Object 值。
Public Function Switch( _
ByVal ParamArray VarExpr() As Object _
) As Object
參數
- VarExpr
必要項。Object 參數陣列。必須有偶數數目的元素。可輸入 Object 變數清單或由逗號分隔的運算式,或 Object 元素的一維陣列。
例外狀況
例外狀況類型 |
錯誤代碼 |
條件 |
---|---|---|
引數的數目為奇數。 |
如果將使用非結構化錯誤處理的 Visual Basic 6.0 應用程式升級,請參閱「錯誤代碼」資料行 (您可以將錯誤代碼與 Number 屬性 (Err 物件) 比對)。但是,請盡可能考慮以 Visual Basic 的結構化例外處理概觀 取代這類錯誤控制項。
備註
提供給 VarExpr 的引數是由成對的運算式和值所組成。Switch 函式會在 VarExpr 中從最低索引到最高索引評估奇數的運算式,並傳回與評估為 True 之第一個運算式關聯的偶數值。例如,如果 VarExpr(0) 為 True,則 Switch 會傳回 VarExpr(1),而如果 VarExpr(0) 為 False 但 VarExpr(2) 為 True,則 Switch 會傳回 VarExpr(3),以此類推。
如果未提供 VarExpr 引數,則 Switch 會傳回 Nothing。
注意事項: |
---|
引數清單中的運算式可包含函式呼叫。Visual Basic 編譯器會呼叫每一運算式中的每個函式,以做為準備 Switch 呼叫引數清單的一部分。這意味著,如果在引數清單中先前已有運算式為 True,則您將無法依賴未呼叫到的特定函式。 |
範例
下列範例會使用 Switch 函式,傳回與城市名稱相符的語言名稱。它需要 Option Strict 為 Off。
Function matchLanguage(ByVal cityName As String) As String
Return CStr(Microsoft.VisualBasic.Switch( _
cityName = "London", "English", _
cityName = "Rome", "Italian", _
cityName = "Paris", "French"))
End Function
因為 System.Diagnostics 命名空間也包含稱為 Switch 的類別,所以 Switch 函式的呼叫必須符合 Microsoft.VisualBasic 命名空間的要求。
需求
**模組︰**Interaction
組件:Visual Basic Runtime Library (在 Microsoft.VisualBasic.dll 中)