Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Turbo_Pascal_lectures.doc
Скачиваний:
5
Добавлен:
23.03.2015
Размер:
190.46 Кб
Скачать
    1. Раздел интерфейса

Раздел интерфейса следует сразу за заголовком модуля и начинается словом Interface. В этом разделе помещаются описания, компонентов, которые должны быть "видимы" (то есть, доступны для использования) за пределами модуля – в программе или другом модуле, к которому данный модуль подключается. В этом разделе нет исполняемых операторов – есть только описания. Здесь можно описывать константы, типы данных, переменные, заголовки процедур и функций.

<раздел интерфейса>::= "Interface" [<описание Uses>] {<описание констант>|<описание типов>| <описание переменных>| <описание заголовков процедур и функций>}.

Назначение описания Uses и его формат описаны ниже. Структура остальных описаний – такая же, как в стандартном Паскале с расширением синтаксиса, принятом в Turbo Pascal. Процедуры и функции в этом разделе не описываются – только их заголовки. Это похоже на опережающее описание, только не используется слово Forward.

Метки здесь не описываются (см. синтаксис меток).

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

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

    1. Раздел реализации

Этот раздел следует сразу после раздела интерфейса, и начинается словом Implementation. Здесь помещаются описания констант, типов, переменных, процедур и функций, которые, по мнению разработчика модуля, лучше спрятать от пользователей модуля (например, для лучшей изоляции данных модуля от ошибок в программе, использующей модуль). Также здесь помещаются полные описания процедур и функций, заголовки которых были описаны в разделе интерфейса.

<раздел реализации>::= "Implementation" [[<описание Uses>] {<описание констант>|<описание типов>| <описание переменных>| <описание процедур и функций>}].

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

Раздел реализации должен присутствовать в модуле обязательно, но он может быть пустым (не содержать никаких описаний после слова Implementation). Такое возможно, если модуль предназначен только для того, чтобы предоставлять описания констант, типов и переменных в готовом виде и не содержит собственных алгоритмов.

    1. Раздел инициализации

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

Если этот раздел включен в модуль, он начинается словом Begin, которое записывается после последнего описания раздела реализации, и заканчивается словом End, которое одновременно заканчивает и модуль. Раздел инициализации похож на составной оператор – между словами Begin и End можно поместить произвольное количество исполняемых операторов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]