Модули

Модуль – хранилище стандартных готовых подпрограмм или данных. Модуль может храниться и компилироваться отдельно. Может использоваться другими программами или модулями путем вызова их подпрограмм по именам. Не используется автономно. Хранится в трех вариантах:

  • Модуль на языке FPC, <имя>.pas.
  • Компилированный ассемблерный модуль, <имя>.ppu.
  • Компилированный объектный модуль, <имя>.o.

Структура модуля:

unit <имя>;                           // Заголовок модуля

interface

<Интерфейсная часть>

implementation

<Исполняемая часть>

initialization                            // Не обязательно

<Инициирующая часть>

finalization                        // Не обязательно

<Завершающая часть>

end.

Имя модуля обязательно, оно используется для связи с вызывающей программой. Должно совпадать с именем файла с кодом модуля на FPC: *.pas. Ссылка на модули в вызывающей программе в строке: uses <список модулей>.

Интерфейсная часть interface содержит:

  • Ссылки на внешние модули, используемые в данном модуле.
  • Объявления глобальных объектов (типов, констант, переменных).
  • Заголовки (только) подпрограмм (функций и процедур).

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

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

Признак конца модуля – точка.

Компилятор FPC содержит встроенные модули библиотеки RTL для разных платформ:

  • Стандартные. Поддерживают все платформы.
  • DOS.
  • Windows.
  • Linux, BSD.
  • OS/2.

Часть стандартных модулей могут включаться пользователем в программмы. Некоторые модули используются неявно, так как ссылки на них есть в используемых пользователем модулях. Основные модули:

Модуль Назначение
Classes Классы для Free Component Library (FCL).
DateUtils Набор ПП для типа TDateTime.
Graph Графика текста, для совместимости с TP. Не рекомендуется.
Math Математика. Расширенные средства.
Matrix Матрицы. Массивы с размерностями 2, 3, 4.
ObjPas Объектный Паскаль, совместимый с Delphi.

Загружается автоматически в режиме ObjPas.

Strings Строки типа PChar.
System Система. Загружается автоматически, ссылок нет.
SysUtils Системные утилиты.
Twitter SEO Community Ваау! News2.ru Chipp Korica SMI2 Google Bookmarks Digg I.ua Закладки Yandex Linkstore Myscoop Communizm Ru-marks Webmarks Ruspace Linkomatic Kli.kz Web-zakladka Zakladok.net Reddit delicious Ma.gnolia Technorati Slashdot Yahoo My Web БобрДобр.ru Memori.ru rucity.com МоёМесто.ru Mister Wong

Copyright © 2009-2010 Программирование на паскале.