Типы данных констант и литералов (Visual Basic)
Литерал — это значение, которое выражается как само по себе, а не как значение переменной или результат выражения, например число 3 или строку Hello. Константой является понятное имя, которое занимает место литерала и сохраняет это же значение во всей программе, в отличие от переменной, значение которой может измениться.
При выборе Off
параметра и параметре StrictOn
необходимо явно объявить все константы с типом данных. В следующем примере тип данных явно объявлен как тип MyByte
Byte
данных:
Option Strict On
Public Class Sample
Public Const MyByte As Byte = 2
End Class
Если Option Infer
это или Option Strict
естьOff
On
, можно объявить константу без указания типа данных с предложениемAs
. Компилятор определяет тип константы из типа выражения. Числовый целочисленный литерал по умолчанию приводится к типу Integer
данных. Тип данных по умолчанию для чисел с плавающей запятой, Double
а ключевое слово True
и False
указание Boolean
константы.
Литералы и приведение типов
В некоторых случаях может потребоваться принудительно применить литерал к конкретному типу данных; например, при назначении особенно большого целочисленного литерального значения переменной типа Decimal
. В следующем примере возникает ошибка:
Dim myDecimal as Decimal
myDecimal = 100000000000000000000 ' This causes a compiler error.
Ошибка приводит к представлению литерала. Тип Decimal
данных может содержать значение этого большого размера, но литерал неявно представлен как не Long
может.
Можно принудить литерал к конкретному типу данных двумя способами: добавив к нему символ типа или поместив его в вложенные символы. Символ типа или вложенные символы должны немедленно предшествовать и/или следовать литералу без пересекающегося пространства или символов любого вида.
Чтобы сделать предыдущий пример работой, можно добавить D
символ типа к литералу, что приводит к его представлению в виде Decimal
:
Dim MyDecimal As Decimal = 100000000000000000000D
В следующем примере показано правильное использование символов типа и вложенных символов:
' Default to Integer.
Public Const DefaultInteger As Integer = 100
' Default to Double.
Public Const DefaultDouble As Double = 54.3345612
' Force constant to be type Char.
Public Const MyCharacter As Char = "a"c
' DateTime constants.
Public Const MyDate As DateTime = #1/15/2001#
Public Const MyTime As DateTime = #1:15:59 AM#
' Force data type to be Long.
Public Const MyLong As Long = 45L
' Force data type to be Single.
Public Const MySingle As Single = 45.55!
В следующей таблице показаны вложенные символы и символы типов, доступные в Visual Basic.
Тип данных | Заключив символ | Символ добавленного типа |
---|---|---|
Boolean |
(нет) | (нет) |
Byte |
(нет) | (нет) |
Char |
" | О |
Date |
# | (нет) |
Decimal |
(нет) | D или @ |
Double |
(нет) | R или # |
Integer |
(нет) | I или % |
Long |
(нет) | L или & |
Short |
(нет) | S |
Single |
(нет) | F или ! |
String |
" | (нет) |
См. также
- Константы, определенные пользователем
- Практическое руководство. Объявление константы
- Общие сведения о константах
- Оператор Option Strict
- Оператор Option Explicit
- Общие сведения о перечислениях
- Практическое руководство. Объявление перечисления
- Перечисления и уточнение имен
- Data Types
- Константы и перечисления