VB.Net在VS2005有個函數叫IIf 簡單舉例用法如下:

Dim age As Integer = 18
MsgBox(IIf(age <= 18, "可看限制級", "不可看限制級"))

此例即是輸出判斷式為真的"可看限制級"
不過IIf其實在VS2008是不建議使用的
建議改以效率較佳的If替代
因為IIf不論判斷式為真或假,皆會去運算後面的兩個內容
這樣除了效率較差,亦有可能會產生錯誤
而If則只運算符合判斷式的內容舉個例子最快~

Dim a As Integer = 4
Dim b As Integer = 0
MsgBox(If(True, a, a \ b))

Dim a As Integer = 4
Dim b As Integer = 0
MsgBox(IIf(True, a, a \ b))

前者用If,因為判斷式為true,所以不會去運算後面的 4 \ 0
而IIf即便為true,也一樣會去運算 4 \ 0而導致發生錯誤

arrow
arrow
    全站熱搜

    Nevinyrral 發表在 痞客邦 留言(0) 人氣()