Компиляция и использование модулей
Модуль компилируется как обычная программа, но так как модуль не является непосредственно выполняемой единицей, то в результате его компиляции образуется дисковый файл с расширением .TPU (Turbo Pascal Unit), при этом имя файла берется из имени файла с исходным текстом модуля. Для того, чтобы использовать модуль, его необходимо откомпилировать. Для того, чтобы в исполняемой программе получить доступ к интерфейсным объектам модуля, необходимо указать в программе имя нужного Tpu-файла. Соответствующая конструкция называется спецификацией используемых модулей и имеет следующий общий вид: uses список_имен_модулей;. эта спецификация должна находится в самом начале программы. Пример 0‑3 Uses MinMax; begin read(x,y); Maximum (x,y,max); writeln(max); writeln(minimum(x,y)); end. Если в программе используются имена, которые описаны в интерфейсной части модуля, то при обращении к переменной модуля, сначала указывается имя модуля: MinMax.max. Возможны случаи косвенного обращения к модулю. Unit A; Interfece …….. end. Unit B; Interfece Uses A; …….. end. Program my Uses B; …………. End. Схема использования модулей может образовывать древовидную структуру любой сложности, но при этом в некоторых случаях явное или косвенное обращение модуля к самому себе запрещено. Нельзя: Unit A; Interfece Uses B …….. end. Unit B; Interfece Uses A; …….. end. Program my Uses B; …………. End. Нельзя обращаться к себе только из интерфейсной части модуля. Если раздел модулей находится в разделе Implementation, то допускается обращение из модуля непосредственно или опосредованно к самому себе.
|