Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Структура модуля

Читайте также:
  1. II. Структура
  2. Quot;ПАБЛИК РИЛЕЙШНЗ": ПОНЯТИЕ, ИСТОРИЯ, СТРУКТУРА
  3. V. 17.3. Структура характера и симптомокомплексы его свойств
  4. V. 18.4. Талант, его происхождение и структура
  5. Активным детям требуется подготовка и структура
  6. Амплитудная модуляция
  7. Амплитудная модуляция по выходному электроду напряжением питания

Логически обособленные группы процедур и функций чрезвычайно удобно объединять в специализированные библиотеки — модули. Каждый модуль – это отдельный файл, содержащий исходный код и имеющий расширение.pas. Каждый модуль редактируется и компилируется отдельно.

Каждый модуль заканчивается зарезервированным словом end (конец) с точкой.

Приведем общую структуру программного модуля.

Модуль состоит из:

  1. заголовка,
  2. секция интерфейса,
  3. секция реализации,
  4. секция инициализации (может отсутствовать),
  5. секция завершения (может отсутствовать).

 

unit <имя модуля>; //Заголовок модуля {$<директивы>} //Директивы компилятора interface //Интерфейсная часть uses <имя>,..., <имя>; //Подключение модулей const...; //Константы type...; //Типы данныхvar...; //Переменные procedure <имя> (<параметры>); //Заголовки процедур function <имя> (<параметры>): <тип>; //Заголовки функций implementation //Часть реализации uses <имя>,..., <имя>; //Подключение модулей const...; //Константы type...; //Типы данных var...; //Переменные procedure <имя>; begin... end; //Реализация процедур function <имя>; begin... end; //Реализация функций initialization <операторы> //Код инициализацииfinalization <операторы> //Код завершенияend.

После слова unit записывается имя модуля. Оно должно совпадать с именем файла, в котором находится исходный текст модуля. Например, если файл называется MathLib.pas, то модуль должен иметь имя MathLib. Заголовок модуля формируется автоматически при сохранении файла на диске, поэтому его не следует изменять вручную. Чтобы дать модулю другой заголовок, просто сохраните его на диске под другим именем.

В секции interface описываются глобальные данные, процедуры и функции, доступные для использования в основной программе и других модулях.

В секции implementation реализуется программный код глобальных процедур и функций и описываются локальные данные, процедуры и функции, недоступные основной программе и другим модулям.

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

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

Если модуль не нуждается в инициализации и завершении, секции initialization и finalization можно опустить.


Дата добавления: 2015-07-26; просмотров: 50 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Перегрузка процедур и функций| ПОДПРОГРАММЫ

mybiblioteka.su - 2015-2024 год. (0.005 сек.)