Константы

Константы — это участки памяти, значения в которых не должны изменяться во время работы программы. В более широком смысле под константой понимают любое значение, которое нельзя изменить, например, 10, 12.5, "string".

Объявление константы производится с помощью оператора Const по следующей схеме:

Const <Имя константы1> [As <Тип>] = <Значение1>[, ...,
      <Имя константыN> [As <Тип>] = <ЗначениеN>

Присвоить значение константе можно только при объявлении. Любая попытка изменения значения в программе приведет к ошибке. Пример объявления четырех констант:

Const X As Integer = 31785
Const Y = 31785
Debug.Print TypeName(X) ' Выведет: Integer
Debug.Print TypeName(Y) ' Выведет: Integer
' Пример объявления сразу двух констант
Const A As Double = 3.1785, B As String = "Строка"

При объявлении константы X тип данных был указан явным образом, а при объявлении константы Y — тип данных не указан. Как видно из результата выполнения функции TypeName() обе константы имеют тип Integer. Таким образом, если тип данных не указан, компилятор самостоятельно подбирает тип данных, соответствующий указанному значению.

После объявления константы, ее можно использовать в выражениях:

Const X As Integer = 31785
Dim y As Integer
y = X + 20

У начинающих программистов часто возникает вопрос зачем использовать константы и почему бы вместо констант не использовать переменные? Предположим, что у нас есть ставка налога и мы используем это значение в огромном количестве выражений. Можно конечно в каждом выражении указать конкретное значение, но представьте себе ситуацию, когда ставка налога изменилась. Придется вручную изменять очень много значений. Используя константу достаточно будет изменить значение только при объявлении константы. Для этой цели можно использовать и обычные переменные, но значение в переменной не защищено от изменения внутри программы. Кроме того, число внутри выражения не несет никакой смысловой нагрузки. Что такое число 18? Просто число. Гораздо лучше вместо числа указать название константы. Правильно подобранное название константы сразу снимет все вопросы и будет понятно, что 18 это ставка НДС.

Предыдущая статья Все статьи Следующая статья