ВУЗ:
Составители:
Рубрика:
34
procedure Push(i: integer);
begin
head:=NewNode(i,head);
end;
function Pop: integer;
var v: PNode;
begin
Assert(not IsEmpty);
v:=head;
head:=head^.next;
Result:=v^.data;
Dispose(v);
end;
function Top: integer;
begin
Assert(not IsEmpty);
Result:=head^.data;
end;
function IsEmpty: boolean;
begin
Result := head=nil;
end;
initialization
head:=nil;
finalization
while not IsEmpty do
Pop;
end.
Добавление элемента в стек и удаление элемента из стека осуществляются с
использованием алгоритмов добавления и удаления из начала односвязного спи-
ска. Отметим еще раз, что
клиентская программа в результате такой замены реа-
лизации стека не изменится.
Реализация стека с помощью модулей имеет один большой недостаток: в
программе можно использовать только один стек. Таким образом, с помощью мо-
дуля нельзя создать полноценный тип данных, позволяющий описывать несколь-
ко переменных этого типа.
Для решения указанной проблемы в современных
языках программирования
введена особая языковая конструкция, называемая классом. Класс сочетает в себе
свойства модуля и типа данных, позволяя описывать и использовать несколько
переменных классового типа, называемых объектами. Использование классов
при составлении программ называется программированием, ориентированным на
Страницы
- « первая
- ‹ предыдущая
- …
- 30
- 31
- 32
- 33
- 34
- …
- следующая ›
- последняя »