Символы типов (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"

Для типов идентификаторов, таких как массивы или структуры, не существуют Booleanсимволы типа идентификатора, CharULongByteObjectUShortDateSByteShortUIntegerа также для типов данных, таких как массивы или структуры.

В некоторых случаях можно добавить символ в $ функцию 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, SByteDateObjectили String для любых составных типов данных, таких как массивы или структуры.

Литералы также могут использовать символы типа идентификатора (%, , !&@, , #), $как и переменные, константы и выражения. Однако символы литерального типа (S, , LID, F, , R) Cможно использовать только с литералами.

Во всех случаях символ литерального типа должен немедленно следовать значению литерала.

Шестнадцатеричные, двоичные и восьмимерные литералы

Компилятор обычно интерпретирует целочисленный литерал в десятичной (базовой 10) системе чисел. Можно также определить целочисленный литерал как шестнадцатеричное (базовое 16) число с &H префиксом, как двоичное (базовое 2) число с &B префиксом и как восьмеричный (базовый 8) номер с &O префиксом. Цифры, следуйте префиксу, должны соответствовать системе чисел. В следующей таблице показано это.

База чисел Префикс Допустимые значения цифр Пример
16 (основание 16) &H 0-9 и A-F &HFFFF
Binary (base 2) &B 0–1 &B01111100
8 (основание 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".

См. также