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


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

Пример. Программа, меняющая в массиве максимальное и минимальное числа.

program EXAMPLE26; {заголовок программы}

uses Unitl, Unit2; {используемые модули}

var i: Integer;

begin

Change(Arr); {процедура замены в Unitl,

массив Arr - в Unit2}

for i := 1 to N do {N-B Unit2}

WriteLn(Arr(i])

end.

 

{модули, расположенные в других файлах}

unit Unitl; {модуль с основной подпрограммой}

interface {интерфейс первого модуля}

uses Unit2; {использование модуля с параметрами}

procedure Change (var Arr: Mass); {заголовок процедуры}

implementation {исполнительная часть}

uses UnitS; {использование модуля с вспомогательной подпрограммой}

procedure Change; {сокращенный заголовок}

var Max, Min, i; Integer;

begin

Max := 1; Min := 1;

for i := 1 to N do {N-в Units}

begin

if Arr[i] > Arr[Max]

then Max := i;

if Arrti] < Arr[Min]

then Min := i

end;

Swap(Arr[Max], Arr[Min]) {замена местами макс.и мин.чисел, процедура в Units}

end

end. {конец Unitl}

 

 

unit Unit2; {модуль с параметрами}

interface {интерфейс второго модуля}

const N = 5; {число элементов}

type Mass = array!1..N] of Real; {тип массива}

const Arr: Mass = (0.5, -2.0, 1.0, 3.5, 7.0);

{типизированная константа}

implementation {исполнительная часть}

end. {конец UNIT2}

 

 

unit UnitS; {модуль с вспомогательной подпрограммой}

interface {интерфейс третьего модуля}

procedure Swap(var X, Y: Real}

implementation {исполнительная часть}

procedure Swap(var X, Y: Real) {перемещение двух чисел}

var Z: Real;

begin

Z := X; X :- Y; Y := Z

end

end. {конец UNITS}

Использование идентификаторов элементов модуля

Как правило, идентификаторы объектов модуля используются в основной программе (или другом модуле) обычным образом. Однако может оказаться, что используемый идентификатор элемента модуля совпадает с идентификатором использующей его программы. Чтобы различить их, при обращении к элементу модуля указывается имя модуля, а затем через точку – идентификатор объекта (аналогично использованию полей записи).

Пример,

program EXAMPLE;

uses Unitl;

var Result, X: Real;

begin

Read (X); {чтение переменной программы}

Read (Unitl.X); {чтение переменной модуля}

Result := X {переменная программы}

+Unitl.X {переменная модуля}

end

 

.

unit Unitl;

interface

var X: Real; {переменная модуля}

implementation

end.

 

19.2 Подпрограммы в языке C



Дата добавления: 2021-03-18; просмотров: 272;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.008 сек.