Учебник по Visual Basic - 2.2. Переменные и процедуры, их области видимости.

E-mail Печать PDF
Рейтинг пользователей: / 434
ХудшийЛучший 
Индекс материала
Учебник по Visual Basic
1.2. Преймущества и недостатки VB
1.3. Запуск VB.
1.4. Интегрированная среда разработки (IDE - Integrated Development Environment)
1.5. Основные конструкции языка.
2. Типы данных. Переменные и процедуры, их области видимости. Массивы.
2.2. Переменные и процедуры, их области видимости.
2.3. Объявление массивов и работа с ними.
3. Создание меню
3.1. Создание статического меню
3.2. Создание контекстно-зависимого меню
5. Реализация технологии Drag&Drop средствами VB
5.1. Объекты Drag&Drop
5.2. События Drag&Drop
5.3. Автоматическое перетаскивание
5.4. Перетаскивание с использованием OLE
5.5. Автоматическое перетаскивание с использованием OLE
5.5. Программируемое перетаскивание с использованием OLE
6. Работа с классами в Visual Basic.
6.1.1. Добавление в класс свойств.
6.1.2. Добавление в класс методов.
6.1.3.Добавление в класс событий.
6.1.4.Объявление и использование объектов.
6.1.5. Удаление объекта класса.
6.2. Самостоятельная работа - доработка класса Splitter.
7. Технология OLE
7.1. Элемент управления OLE Container
7.2. Объекты OLE как элементы управления
7.3. OLE Automation
7.4. Создание объекта OLE
7.5. Использование объекта OLE
7.6. Работа с объектами Word
8. Создание элементов управления Active X.
Создание элементов управления ActiveX
Создание элементов управления Active X на примере ZigZag.
9. Использование функций Windows API в VB.
API-вызовы
10. Файловые функции в Visual Basic.
10.2. Обработка текстовых документов (файлы последовательного доступа).
10.3. Файлы произвольного (прямого) доступа.
10.4. Файлы инициализации.
10.5. Использование FSO (File System Object).
11. Использование элемента управления WinSock Control для создания сетевых приложений.
12. Доступ к базам данных из VB с помощью ADO.
12.2. Объект управления данными - ADO Data Control.
12.3. Связанные с данными элементы управления.
12.4. Использование Data Grid Control.
12.5. Доступ к базам данных через объекты ADODB.
13. Практика
Все страницы

2. Переменные и процедуры, их области видимости.

2.1. Явное и неявное объявление переменных.

Явное объявление переменных означает, что в программе для указания типа переменных будет использоваться конструкция As <тип>.

Пример:

Dim first As Integer

Public second As String

Неявное объявление - определение типа переменной по ее имени (точнее, по суффиксу имени) без использования ключевого слова As. Суффикс состоит из одного символа, соответствие между суффиксами и типами представлено в следующей таблице:

Тип переменной

Суффикс

Integer

%

Long

&

Single

!

Double

#

Currency

@

String

$

Variant

Без суффикса

Если в модуле в разделе глобальных  объявлений  нет предписания Option Explicit, то переменные можно не объявлять. Они будут создаваться при первом использовании с помощью неявного объявления. !!!!!!!!!!! (Option Explicit и объявлять - обязательно)

Пример использования неявного объявления:

Inta% = 6 `создает переменную типа Integer и присваивает ей значение 6

Str1$ = "string1" `создает переменную типа String и присваивает ей значение

Pi# = 3.1415926 `создает переменную типа Double и присваивает ей значение

Varvar = 5 `создает переменную типа Variant и присваивает ей значение 5

Если же в модуле существует предписание Option Explicit, то переменную перед использованием необходимо объявить. Однако и здесь можно прибегнуть к неявному описанию.

Пример:

Dim Inta%

Dim Str1$

Dim Pi#

Dim Varvar

 

2.2. Строки переменной и фиксированной длины.

Большинство строк, с которыми приходится иметь дело в программах, являются т.н. строками переменной длины. Строковая переменная данного типа может иметь длину до 2 Гбайт (2 млрд. символов). Причем VB сам заботится об резервировании и изменении памяти, отводимой под такую переменную.

Однако в VB предусмотрен и другой строковой тип данных - строки фиксированной длины. Длина такой переменной всегда постоянно, вне зависимости от значения. Если длина строки, хранящейся в строковой переменной фиксированной длины меньше, чем размер строковой переменной, то оставшееся места заполняется пробелами. Если же длина хранимой строки больше, то «лишняя» часть отсекается по длине переменной!

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

<квалификатор видимости> <имя переменной> As String * <длина>

Пример:

Dim Strstr1 As String * 25

Public Strstr2 As String * 255

Очевидно, что у использования переменных постоянной длины есть только одно преимущество - присвоение такой переменной значений происходит несколько быстрее.

 

2.3. Квалификаторы видимости и области видимости переменных.

Помимо имени переменной и ее типа в операторе объявления переменной указывается т.н. область видимости переменной, т.е. область ее действия.

Существуют три зоны видимости переменных:

  • Видимость в процедуре
  • Видимость в форме (модуле)
  • Видимость в проекте

И четыре ключевых слова, использующихся для задания области видимости (квалификаторы видимости):

  • Dim
  • Private
  • Public
  • Static

В зависимости от нахождения оператора объявления переменной (в процедуре или модуле) она имеет следующие зоны видимости:

Квалификатор видимости

Определена в процедуре или функции

Определена в модуле (в глобальном разделе описания)

Dim

Видимость только в процедуре

Видимость в модуле и всех функциях и процедурах модуля

Private

Не используется

Видимость в модуле и всех функциях и процедурах модуля

Public

Не используется

Видимость во всем проекте

Static

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

Не используется

       

Статическая переменная в отличие от динамической (динамическими являются все переменные по умолчанию) не пересоздается при  каждом вызове функции или процедуры. Она сохраняет свое значение на протяжении выполнения программы (или существовании экземпляра формы или класса, если переменная определена в методе или обработчике событий формы или методе класса).

 

2.4. Квалификаторы видимости и области видимости процедур и функций.

Для функции и процедур тоже существуют свои области видимости.

Существуют три зоны видимости процедур и функций:

  • Видимость в форме (модуле)
  • Видимость в проекте

И три ключевых слова, использующихся для задания области видимости (квалификаторы видимости):

  • Private
  • Public

В зависимости от нахождения оператора объявления функции или процедуры (в форме или модуле) она имеет следующие зоны видимости:

Квалификатор видимости

Определена в форме

Определена в модуле

Private

Видимость только в форме

Видимость только в модуле

Public

Видимость во всем проекте

Видимость во всем проекте

Если указано ключевое слово Static, то все переменные, объявленные в этой процедуре или функции становится статическими.

Доступ к переменным и функциям/процедурам, определенным в форме и видимым во всем проекте осуществляется через имя формы, точку и имя переменной или процедуры/функции. Для переменных, определенных в модуле, имя модуля указывать не надо, если нет одинаковых Public переменных в разных модулях.