Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow Информатика

Модули

Модуль – это подключаемая к программе библиотека ресурсов. Он может содержать описания типов констант, переменных и подпрограмм. В модуль обычно объединяют связанные между собой ресурсы: например, в составе оболочки есть модуль Graph для работы с экраном в графическом режиме.

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

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

Модули можно разделить на стандартные, которые входят в состав системы программирования, и пользовательские, т.е. создаваемые программистом. Чтобы подключить модуль к программе, его требуется предварительно скомпилировать. Результат компиляции каждого модуля хранится на диске в отдельном файле с расширением . tpu.

Описание модулей

Исходный текст каждого модуля хранится в отдельном файле с расширением .pas. Общая структура модуля:

unit имя; {заголовок модуля}

interface {интерфейсная секция модуля}

{описание глобальных элементов модуля (видимых извне)}

implementation {секция реализации модуля}

{описание локальных (внутренних) элементов модуля}

begin {секция инициализации}

{может отсутствовать} end

ВНИМАНИЕ

Имя файла, в котором хранится модуль, должно совпадать с именем, заданным после ключевого слова unit.

Модуль может использовать другие модули, для этого их надо перечислить в операторе uses, который может находиться только непосредственно после ключевых слов interface или implementation.

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

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

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

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

Операторы, расположенные в секции инициализации модуля, выполняются перед операторами основной программы.

Для сохранения скомпилированного модуля на диске требуется установить значение пункта Destination меню Compile в значение Disk. Компилятор создаст файл с расширением . tpu.

Пример

Оформим в виде модуля подпрограмму вычисления среднего арифметического значения элементов массива, unit Avrg; interface const n = 10;

type mas = array [1.. n] of real; procedure average (x: mas; var av: real); implementation

procedure average (x: mas; var av: real);

var i: integer; begin av:= 0;

for i:= 1 to n do av:= av + x [i]; av:= av / n; end; end

Использование модулей

Для использования в программе величин, описанных в интерфейсной части модуля, имя модуля указывается в разделе uses. Можно записать несколько имен модулей через запятую, например:

program example;

uses Avrg, Graph, Crt;

Поиск модулей выполняется сначала в библиотеке исполняющей системы, затем в текущем каталоге, а после этого – в каталогах, заданных в диалоговом окне Options/Directories.

Если в программе описана величина с тем же именем, что и в модуле, то для обращения к величине из модуля требуется перед ее именем указать через точку имя модуля.

 
Если Вы заметили ошибку в тексте выделите слово и нажмите Shift + Enter
< Предыдущая   СОДЕРЖАНИЕ   Следующая >
 

Популярные страницы