程式碼中的特殊字元 (Visual Basic)
有時候,您必須在程式碼中使用特殊字元,亦即不是字母或數字的字元。 Visual Basic 字元集中的標點符號和特殊字元有許多用途,從組織程式文字到定義編譯器或編譯程式執行的工作都包含在內。 這些字元不指定要執行的作業。
括號
定義程序時,請使用括弧,例如 Sub
或 Function
。 您必須以括弧括住所有程序引數清單。 您也可以使用括弧將變數或引數放入邏輯群組中,尤其可用於覆寫複雜運算式中預設的運算子優先順序。 說明如下例。
Dim a, b, c, d, e As Double
a = 3.2
b = 7.6
c = 2
d = b + c / a
e = (b + c) / a
執行上述程式碼之後,d
的值是 8.225,e
的值是 3。 d
的計算會使用 /
的預設優先順序 (而非 +
),相等於 d = b + (c / a)
。 e
的計算中使用的括弧會覆寫預設優先順序。
分隔符號
分隔符號的作用正如其名,會分隔程式碼區段。 在 Visual Basic 中,分隔符號字元是冒號 (:
)。 如果您想將多個陳述式加入單一行,而不是多個個別的行,請使用分隔符號。 這樣可節省空間並改善程式碼的可讀性。 下列範例示範三個以冒號分隔的陳述式。
a = 3.2 : b = 7.6 : c = 2
如需詳細資訊,請參閱如何中斷和合併程式碼中的陳述式。
冒號 (:
) 字元也可用來識別陳述式標籤。 如需詳細資訊,請參閱如何標示陳述式。
串連
使用 &
運算子可進行「串連」,亦即將字串連結在一起。 請勿將它與 +
運算子混淆,此運算子的作用是將數值加在一起。 如果您使用 +
運算子對數值操作時串連,可能會取得錯誤結果。 下列範例示範此作業。
var1 = "10.01"
var2 = 11
resultA = var1 + var2
resultB = var1 & var2
在執行上述程式碼之後,resultA
的值是 21.01,resultB
的值為「10.0111」。
成員存取運算子
若要存取型別的成員,您可以在型別名稱和成員名稱之間使用點 (.
) 或驚嘆號 (!
) 運算子。
點 (.)運算子
.
運算子可在類別、結構、介面或列舉上當作成員存取運算子。 成員可以是欄位、屬性、事件或方法。 說明如下例。
Dim nextForm As New System.Windows.Forms.Form
' Access Text member (property) of Form class (on nextForm object).
nextForm.Text = "This is the next form"
' Access Close member (method) on nextForm.
nextForm.Close()
驚嘆號 (!)運算子
!
只可在類別或介面上當作字典存取運算子。 類別或介面必須有可接受單一 String
引數的預設屬性。 緊接在 !
運算子後面的識別碼會成為以字串形式傳遞至預設屬性的引數值。 下列範例示範此作業。
Public Class hasDefault
Default Public ReadOnly Property index(ByVal s As String) As Integer
Get
Return 32768 + AscW(s)
End Get
End Property
End Class
Public Class testHasDefault
Public Sub compareAccess()
Dim hD As hasDefault = New hasDefault()
MsgBox("Traditional access returns " & hD.index("X") & vbCrLf &
"Default property access returns " & hD("X") & vbCrLf &
"Dictionary access returns " & hD!X)
End Sub
End Class
MsgBox
的三個輸出行全都會顯示值 32856
。 第一行使用傳統存取權存取屬性 index
, 第二行會利用 index
是類別 hasDefault
預設屬性的特性,而第三行則使用字典存取權來存取類別。
請注意,!
運算子的第二個運算元必須是有效 Visual Basic 識別碼,不以雙引號 (" "
) 框住。 換句話說,您無法使用字串常值或字串變數。 下方對 MsgBox
呼叫的最後一行所做的變更會產生錯誤,因為 "X"
是加上括號的字串常值。
"Dictionary access returns " & hD!"X")
注意
預設集合的參考必須明確。 尤其是不得在晚期繫結變數上使用 !
運算子。
!
字元也會當做 Single
型別字元來使用。