Модули
Кроме рассмотренных выше
программ и подпрограмм, язык Object Pascal позволяет создавать так называемые
модули.
Модуль (unit
)
— предназначен для записи в него различных элементов, таких как подпрограммы,
переменные, константы и др.
Модуль не может быть запущен
на исполнение как программа. Чтобы использовать модуль в программе, его необходимо
подключить. Для этого имя модуля указывается в разделе uses основной программы.
Рис.
4.1. Форма приложения
Для каждой формы приложения
Kylix создается новый модуль. Например, при первоначальном запуске среды вы
видите на экране форму с именем Form1
(рис. 4.1) и модуль формы
с именем Unit1.pas
(рис. 4.2).
Рис.
4.2. Модуль Unitl.pas
Рассмотрим состав модуля
более подробно:
unit имя модуля;
interface // Начало раздела интерфейса
uses // Список используемых модулей
const // Раздел объявления констант
type // Раздел объявления типов
var // Раздел объявления переменных
// Заголовки процедур
// Заголовки функций
implementation // Раздел реализации
uses // Список используемых модулей
const // Раздел объявления констант
type // Раздел объявления типов
var // Раздел объявления переменных
// Описание процедур
// Описание функций
initialization // Раздел инициализации
// Операторы и команды
finalization // Раздел завершения
// Операторы и команды
end.
Первый раздел — раздел
интерфейса, который является как бы "лицом" данного модуля.
В нем размещены описания модулей, используемых данным модулем, а также объявляются
типы, константы, переменные, функции и процедуры, описываются идентификаторы,
являющиеся доступными всем модулям и программам, использующим данный модуль.
Заметим, что для функций и процедур в данном разделе записываются только их
заголовки. Непосредственно процедуры и функции размещены в следующем разделе
— разделе реализации.
В разделе реализации,
кроме процедур и функций, описываются типы, константы, переменные, а также
модули, которые используются только в этом модуле, а за его пределами не видны.
Кроме того, в данном разделе размещаются директивы компилятора — служебные команды
среды разработки.
Последние два раздела не
являются обязательными. В разделе инициализации размещаются операторы
и команды, которые должны выполняться в начале работы программы, подключающей
эти модули.
При наличии раздела инициализации
в модуле может присутствовать раздел завершения. В данном разделе находятся
операторы и команды, которые выполняются при завершении работы программы.