8. Модули
53
бъдат използвани чрез квалифицирано указване. Това става като първо се изписва името
на модула, а след него името на необходимия идентификатор, разделени с точка
(същото както при записи, с тази разлика, че вместо името на записа се използва името
на модула).
Ако два модула експортират един и същи идентификатор, то този идентификатор
е недостъпен за директно използване, поради нееднозначността си. В този случай е
разрешено само квалифицираното му използване.
Всички стандартни идентификатори, достъпни в UniPascal, са декларирани в
модула STANDARD. Затова е възможно квалифицираното им използване от този
модул.Пример на програма, използваща модула STACK:
program UseStack(message);
uses Stack;
var i: integer;
begin
writeln('
Начало на програмата.
');
writeln('
Поставяне на цели числа в стека...
');
i:= 0;
while not full do begin
writeln('
Поставяне на ', i, ' в стека.
');
push(i); inc(i);
end { while };
writeln('
Изваждане на числата от стека...
');
while not empty do begin
writeln('
Извадихме ', i, ' от стека.
');
end { while };
writeln('
Край на програмата.
');
end { UseStack }.
На настоящия пример не е необходим голям стек. Но ако напишете програма,
използваща по-голям стек, достатъчно е да смените само константата в
реализационната част на модула. При това не е необходимо да се прекомпилира
изобщо програмата, използваща стека. Нещо повече - ако стекът е твърде голям, за
да се побере в паметта на компютъра (особено ако стекът се състои не от цели числа,
а от записи или масиви), може да промените изцяло реализацията, като използвате
външна памет (дисков файл).
<<  <  GO  >  >>

Вернуться к началу сайта