除了在宣告語句中指定數據類型之外,您還可以使用 類型字元強制某些程式設計專案的數據類型。 型別字元必須緊接在 元素後面,沒有任何種類的插字字元。
類型字元不是項目名稱的一部分。 使用類型字元定義的元素可以參考,而不需要使用類型字元。
識別符類型字元
Visual Basic 提供一組 識別元類型字元 ,您可以在宣告中用來指定變數或常數的數據類型。 下表顯示可用的識別元類型字元,以及使用方式範例。
| 識別子類型字符 | 數據類型 | 範例 |
|---|---|---|
% |
Integer |
Dim L% |
& |
Long |
Dim M& |
@ |
Decimal |
Const W@ = 37.5 |
! |
Single |
Dim Q! |
# |
Double |
Dim X# |
$ |
String |
Dim V$ = "Secret" |
Boolean
Byte
Char
Date
Object
SByte
Short
UInteger
ULong或UShort資料類型,或任何複合資料類型,例如陣列或結構,沒有識別元字元。
在某些情況下,您可以將 $ 字元附加至 Visual Basic 函式,例如以 Left$ 來代替 Left,以取得 String 型別的傳回值。
在所有情況下,標識元類型字元必須緊接在標識碼名稱後面。
字面型字元
文字常數是某個數據類型特定值的表示。
預設常值類型
文字在程式碼中的形式通常會決定其資料類型。 下表顯示這些預設類型。
| 文字形式的字面量 | 默認數據類型 | 範例 |
|---|---|---|
| 數值,無小數部分 | 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 |
不存在任何常值類型字元,無論是Boolean、Byte、Date、Object、SByte、String資料類型,或任何複合資料類型,例如陣列或結構。
常值也可以使用識別碼類型字元(%、&、@、!、#、$),與變數、常數和表示式相同。 不過,常值類型字元 (S、 、 IL、 D、 F、 RC) 只能搭配常值使用。
在所有情況下,常值類型字元必須緊接在常值後面。
十六進位數字、二進位數字和八進位數字常值
編譯器通常會將整數文字解譯為十進位數(base 10)數字系統。 您也可以將整數常值定義為具有 &H 前綴的十六進位(base 16)數字、具有 &B 前綴的二進位(base 2)數字,及具有 &O 前綴的八進位(base 8)數字。 在前綴後面的數字必須符合數字系統的要求。 下表說明這一點。
| 數字基數 | 前綴 | 有效位數值 | 範例 |
|---|---|---|---|
| 十六進位(基數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 語言版本。