分享方式:


類型字元 (Visual Basic)

除了在宣告陳述式中指定資料類型之外,您還可以使用類型字元來強制某些程式設計元素的資料類型。 類型字元必須緊接在元素後面,不能有任何種類的插入字元。

類型字元不是元素名稱的一部分。 使用類型字元定義的元素可以不用類型字元進行參考。

識別項類型字元

Visual Basic 提供了一組識別項型別字元,您可以在宣告中用來指定變數或常數的資料類型。 下表顯示了可用的識別項類型字元,以及用法的範例。

識別項類型字元 資料類型 範例
% Integer Dim L%
& Long Dim M&
@ Decimal Const W@ = 37.5
! Single Dim Q!
# Double Dim X#
$ String Dim V$ = "Secret"

識別項類型字元不適用於 BooleanByteCharDateObjectSByteShortUIntegerULongUShort 資料類型,或任何的複合資料類型 (例如陣列或結構)。

在某些情況下,您可以將 $ 字元附加到 Visual Basic 函式 (例如 Left$,而不是 Left),以取得類型 String 的傳回值。

在所有情況下,識別項類型字元都必須緊接在識別項名稱後面。

常值類型字元

常值 (Literal) 是一種資料類型的特定值的文字表示方式。

預設的常值類型

常值在您的程式碼中出現的形式通常決定了它的資料類型。 下表顯示這些預設的類型。

常值的文字形式 預設的資料類型 範例
數字類型,沒有小數部分 Integer 2147483647
數字類型,沒有小數部分,對 Integer 而言太大 Long 2147483648
數字類型,有小數部分 Double 1.2
括在雙引號中 String "A"
用數字符號括起來 Date #5/17/1993 9:32 AM#

強制常值類型

Visual Basic 提供了一組常值類型字元,您可以用來強制一個常值採用一個不同於其形式所指示的資料類型。 您可以透過在常值後面附加該字元來實現。 下表顯示了可用的常值類型字元,以及用法的範例。

常值類型字元 資料類型 範例
S Short I = 347S
I Integer J = 347I
L Long K = 347L
D Decimal X = 347D
F Single Y = 347F
R Double Z = 347R
US UShort L = 347US
UI UInteger M = 347UI
UL ULong N = 347UL
C Char Q = "."C

常值類型字元不適用於 BooleanByteDateObjectSByteString 資料類型,或任何的複合資料類型 (例如陣列或結構)。

常值也可以使用識別項類型字元 (%&@!#$),就像變數、常數和運算式一樣。 但是,常值類型字元 (SILDFRC) 只能搭配常值使用。

在所有情況下,常值類型字元必須緊接在常值的值後面。

十六進位、二進位和八進位的常值

編譯器通常會將整數常值解譯為十進位 (以 10 為底) 的數字系統。 您也可以用 &H 前置詞將整數常值定義為十六進位 (以 16 為底) 的數字,用 &B 前置詞將其定義為二進位 (以 2 為底) 的數字,或用 &O 前置詞將其定義為八進位 (以 8 為底) 的數字。 前置詞後面的數字必須適合於該數字系統。 下表說明這一點。

數字進位制 Prefix 有效的數字值 範例
十六進位 (基底 16) &H 0-9 和 A-F &HFFFF
二進位 (以 2 為底) &B 0-1 &B01111100
八進位 (基底 8) &O 0-7 &O77

從 Visual Basic 2017 開始,您可以使用底線字元 (_) 做為群組分隔符號,以增強整數常值的可讀性。 下列範例使用 _ 字元將二進位常值分組為 8 位元的群組:

Dim number As Integer = &B00100010_11000101_11001111_11001101

您可以在一個前置常值後面加上一個常值類型字元。 以下範例說明這點。

Dim counter As Short = &H8000S
Dim flags As UShort = &H8000US

在上面的範例中,counter 具有 -32768 的十進位值,而 flags 具有 +32768 的十進位值。

從 Visual Basic 15.5 開始,您也可以使用底線字元 (_) 作為前置字元與十六進位、二進位或八進位數字之間的前置分隔符號。 例如:

Dim number As Integer = &H_C305_F860

若要使用底線字元作為前置分隔符號,您必須將下列項目新增至 Visual Basic 專案 (*.vbproj) 檔:

<PropertyGroup>
  <LangVersion>15.5</LangVersion>
</PropertyGroup>

如需詳細資訊,請參閱選取 Visual Basic 語言版本

另請參閱