Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб3_Visual Basic.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.67 Mб
Скачать

1.6. Доступность

В VB есть три вида области действия переменной, характеризующих доступность переменной для выполнения с ней каких-либо действий:

  1. локальная;

  2. контейнерная;

  3. глобальная.

Локальными переменными являются переменные, описанные внутри процедуры или функции. Они доступны только внутри этой процедуры (функции). Локальные переменные описываются операторами Dim или Static.

Переменные контейнера описываются в области описаний контейнера (формы, модуля). Для объявления контейнерной переменной используйте оператор Private или Dim в разделе (General) (Declarations) модуля или формы. В этом случае объявленная переменная будет доступна для всех входящих в форму или модуль процедур, но в то же время недоступна в процедурах других модулей и форм. Переменные контейнера сохраняются, пока форма загружена

Рис. 3.2. Пример описания переменной контейнера

Глобальная переменная описывается там же, где и контейнерная, но перед ней ставится ключевое слово Public. Это позволяет использовать данную переменную во всех модулях и процедурах проекта.

Рис. 3.3. Пример описания глобальной переменной

Область действия выбранных переменных имеет принципиальное значение при выполнении программы. Попытка использовать переменные, которые не действуют в данном месте программы, приводит к ошибкам программирования и расчетов.

1.7. Время жизни переменных

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

Локально объявленные переменные при выходе из процедуры удаляются из памяти, а при новом вызове процедуры инициализируются заново. Их содержимое при этом не сохраняется, что не всегда желательно. Этого можно было бы избежать путём расширения области определения, т.е. объявив переменную глобальной или, как минимум, переменной контейнера. Но это разрешает доступ к переменной из других процедур. Visual Basic даёт возможность объявлять переменные, как статические. При выходе из процедуры содержимое статической переменной сохраняется. При новом вызове этой процедуры переменной присваивается значение, которое она имела при последнем выходе из этой процедуры. Содержимое переменной сохраняется в течение всего времени, пока существует в памяти форма или модуль. Для объявления переменной как статической нужно просто вместо оператора Dim использовать слово Static.

Пример. Сравните работу двух процедур и предположите, что будет на форме в первом случае, а что во втором:

' Первый случай

Private Sub Command1_Click()

Dim a As Integer

a = a + 1

Print a

End Sub

' Второй случай

Private Sub Command1_Click()

Static a As Integer

a = a + 1

Print a

End Sub

В первом примере при работе процедуры, т.е. при кликаньи на командной кнопке Command1, на форму все время будет выводиться 1 (по умолчанию a=0, плюс 1 равно 1). Во втором примере переменная a создается один раз и увеличивается на единицу, т.е. на форму выводится 1, 2, 3, …

  1. Константы

В Visual Basic можно объявлять не только переменные, но и константы. Константа, как и переменная, тоже хранит некоторое значение, но в отличие от переменной хранимое значение не может изменяться. Как и переменная, константа может быть: локальная, контейнерная, глобальная.

Приведем несколько примеров:

75.07 – числовая константа;

2.7Е+6 – числовая константа (равна 2 700 000);

"Ошибка доступа к базе данных" – строковая константа;

#8/12/1999# – константа типа дата;

False – логическая константа.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]