Символы типов (Visual Basic)Type characters (Visual Basic)

Помимо указания типа данных в операторе объявления, можно принудительно указать тип данных некоторых программных элементов с помощью символа типа.In addition to specifying a data type in a declaration statement, you can force the data type of some programming elements with a type character. Символ типа должен следовать непосредственно за элементом, не имеющим промежуточных символов любого вида.The type character must immediately follow the element, with no intervening characters of any kind.

Символ типа не является частью имени элемента.The type character is not part of the name of the element. На элемент, определенный с помощью символа типа, можно ссылаться без символа типа.An element defined with a type character can be referenced without the type character.

Символы типа идентификатораIdentifier type characters

Visual Basic предоставляет набор символов типа идентификатора , которые можно использовать в объявлении для указания типа данных переменной или константы.Visual Basic supplies a set of identifier type characters that you can use in a declaration to specify the data type of a variable or constant. В следующей таблице приведены доступные символы типа идентификатора с примерами использования.The following table shows the available identifier type characters with examples of usage.

Символ типа идентификатораIdentifier type character Тип данныхData type ПримерExample
% 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 для любых составных типов данных, таких как массивы или структуры, символы типа Identifier не существуют.No identifier type characters exist for the Boolean, Byte, Char, Date, Object, SByte, Short, UInteger, ULong, or UShort data types, or for any composite data types such as arrays or structures.

В некоторых случаях можно добавить $ символ в Visual Basic функцию, например Left$ Left , вместо, чтобы получить возвращаемое значение типа String .In some cases, you can append the $ character to a Visual Basic function, for example Left$ instead of Left, to obtain a returned value of type String.

Во всех случаях символ типа идентификатора должен следовать непосредственно за именем идентификатора.In all cases, the identifier type character must immediately follow the identifier name.

Символы типа литералаLiteral type characters

Литерал — это текстовое представление конкретного значения типа данных.A literal is a textual representation of a particular value of a data type.

Типы литералов по умолчаниюDefault literal types

Форма литерала в том виде, в котором она отображается в коде, обычно определяет его тип данных.The form of a literal as it appears in your code ordinarily determines its data type. В следующей таблице показаны эти типы по умолчанию.The following table shows these default types.

Текстовая форма литералаTextual form of literal Тип данных по умолчаниюDefault data type ПримерExample
Numeric, без дробной частиNumeric, no fractional part Integer 2147483647
Numeric, без дробной части, слишком большой дляIntegerNumeric, no fractional part, too large for Integer Long 2147483648
Числовая, дробная частьNumeric, fractional part Double 1.2
Заключено в двойные кавычкиEnclosed in double quotation marks String "A"
Заключено в знаки решеткиEnclosed within number signs Date #5/17/1993 9:32 AM#

Принудительные типы литераловForced literal types

Visual Basic предоставляет набор символов типа литерала, который можно использовать для принудительного применения литерала к типу данных, отличному от того, который указывает его форма.Visual Basic supplies a set of literal type characters, which you can use to force a literal to assume a data type other than the one its form indicates. Это можно сделать, добавив символ в конец литерала.You do this by appending the character to the end of the literal. В следующей таблице показаны доступные символы типа литерала с примерами использования.The following table shows the available literal type characters with examples of usage.

Символ типа литералаLiteral type character Тип данныхData type ПримерExample
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 для любых составных типов данных, таких как массивы или структуры, не существует символов типа литерала.No literal type characters exist for the Boolean, Byte, Date, Object, SByte, or String data types, or for any composite data types such as arrays or structures.

Литералы также могут использовать символы типа идентификатора ( % ,,,, & @ ! # , $ ), как это могут быть переменные, константы и выражения.Literals can also use the identifier type characters (%, &, @, !, #, $), as can variables, constants, and expressions. Однако символы типа литерала (,,,,, S I L D F R , C ) можно использовать только с литералами.However, the literal type characters (S, I, L, D, F, R, C) can be used only with literals.

Во всех случаях символ типа литерала должен следовать непосредственно за литеральным значением.In all cases, the literal type character must immediately follow the literal value.

Шестнадцатеричные, двоичные и восьмеричные литералыHexadecimal, binary, and octal literals

Компилятор обычно интерпретирует целочисленный литерал в десятичной системе счисления (с основанием 10).The compiler normally interprets an integer literal to be in the decimal (base 10) number system. Можно также определить целочисленный литерал как шестнадцатеричное (с основанием 16) числом с &H префиксом, как двоичное (основание 2) с &B префиксом, а также как восьмеричное (основание 8) число с &O префиксом.You can also define an integer literal as a hexadecimal (base 16) number with the &H prefix, as a binary (base 2) number with the &B prefix, and as an octal (base 8) number with the &O prefix. Цифры, которые следуют за префиксом, должны соответствовать системе счисления.The digits that follow the prefix must be appropriate for the number system. Это показано в следующей таблице.The following table illustrates this.

Базовый номерNumber base PrefixPrefix Допустимые разрядные значенияValid digit values ПримерExample
16 (основание 16)Hexadecimal (base 16) &H 0-9 и A-F0-9 and A-F &HFFFF
Двоичный (основание 2)Binary (base 2) &B 0—10-1 &B01111100
8 (основание 8)Octal (base 8) &O 0-70-7 &O77

Начиная с Visual Basic 2017, можно использовать символ подчеркивания () в _ качестве разделителя групп, чтобы повысить удобочитаемость целочисленного литерала.Starting in Visual Basic 2017, you can use the underscore character (_) as a group separator to enhance the readability of an integral literal. В следующем примере символ используется _ для группирования двоичного литерала в 8-разрядные группы:The following example uses the _ character to group a binary literal into 8-bit groups:

Dim number As Integer = &B00100010_11000101_11001111_11001101

Можно следовать предопределенному литералу с символом типа литерала.You can follow a prefixed literal with a literal type character. В следующем примере приведена иллюстрация этого.The following example shows this.

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

В предыдущем примере counter имеет десятичное значение-32768 и flags имеет десятичное значение + 32768.In the previous example, counter has the decimal value of -32768, and flags has the decimal value of +32768.

Начиная с Visual Basic 15,5, можно также использовать символ подчеркивания () в _ качестве начального разделителя между префиксом и шестнадцатеричными, двоичными или восьмеричными цифрами.Starting with Visual Basic 15.5, you can also use the underscore character (_) as a leading separator between the prefix and the hexadecimal, binary, or octal digits. Пример:For example:

Dim number As Integer = &H_C305_F860

Чтобы использовать символ подчеркивания в качестве начального разделителя, нужно добавить в файл проекта Visual Basic (*.vbproj) следующий элемент:To use the underscore character as a leading separator, you must add the following element to your Visual Basic project (*.vbproj) file:

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

Для получения дополнительной информации см.For more information see setting the Visual Basic language version.

См. также разделSee also