Создание модулей

Создание модулей

Часто одну и ту же процедуру нужно использовать в различных программах. Например, Вам нужно написать несколько программ, каждая из которых выполняет какие-либо операции с массивами целых чисел. Неужели в каждой программе нужно будет писать заново процедуры ввода и вывода массива или процедуру его сортировки? Можно, конечно, так и поступить, но лучше просто объединить эти процедуры в отдельный файл, оформить его как модуль, и подключать, если необходимо. Вспомните, как во многих программах Вы подключали модуль Crt, когда нужно было вызвать процедуру очистки экрана.

Итак, Вам требуется создать свой собственный модуль. Для этого нужно знать, как же он должен быть устроен. Давайте разберемся со всем по порядку.

Модуль состоит из следующих частей:

  • заголовок модуля;
  • интерфейсная часть;
  • исполняемая часть;
  • инициирующая часть.

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

Заголовок модуля состоит из зарезервированного слова UNIT и имени модуля, например:

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

Интерфейсная часть модуля открывается зарезервированным словом INTERFACE. Далее указываются константы, типы, переменные, процедуры и функции, которые могут быть использованы любой программой при вызове этого модуля. В этой части и происходит взаимодействие модуля с другими программами. Например, если интерфейсная часть Вашего модуля выглядит следующим образом:

то в любой программе достаточно лишь написать в самом начале

и можно будет дальше использовать константу Number, тип IntArray, процедуры ввода и сортировки массива InputIntArray и SortIntArray и функцию SumIntArray, не утруждая себя их описанием.

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

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: