ВУЗ:
Составители:
Рубрика:
27
5. Удаляется ФАКУЛЬТЕТ в обратном порядке.
6. Метод-итератор и класс выбирается на основе контрольной рабо-
ты № 1.
Например, для класса TStudentGroup может быть предложен итера-
тор
Procedure TStudentGroup.ForEach(action:pointer;parametr:real);
где action − указатель на процедуру или функцию, которая должна быть
выполнена для всех объектов, включенных в группу (в данном случае для
всех
СТУДЕНТОВ), parametr − передаваемая процедуре дополнительная
информация.
В качестве передаваемой методу функции может быть предложена,
например, такая: “Вывести список студентов, имеющих рейтинг не ниже
заданного”:
Procedure MyProc(p:PObject,rate:real);far;
Begin
if PStudent(p)^.GetRating>=rate then writeln(PStudent(p)^.GetName);
End;
Если pg − указатель на объект TStudentGroup, то вызов итератора бу-
дет иметь следующий вид:
pg^.ForEach(@MyProc,45); {список студентов, чей рейтинг выше 45}
7. Определение классов
(объектных типов), процедур и функций по-
местить в модуль L02UXXX, где XXX- аббревиатура фамилии, имени и от-
чества, например, Иванов Петр Григорьевич − IPG.
8. Демонстрационную программу поместить в файл L02XXX.PAS.
Содержание отчета.
1. Титульный лист.
2. Постановка задачи.
3. Иерархия классов.
4. Иерархия объектов.
5. Определение классов (добавленных или измененных по сравнению
с лабораторной работой № 2).
6. Реализация для одного не абстрактного класса-группы всех мето-
дов.
7. Реализация итератора.
8. Реализация передаваемой итератору процедуры или функции.
9. Листинг демонстрационной программы.
27
5. Удаляется ФАКУЛЬТЕТ в обратном порядке.
6. Метод-итератор и класс выбирается на основе контрольной рабо-
ты № 1.
Например, для класса TStudentGroup может быть предложен итера-
тор
Procedure TStudentGroup.ForEach(action:pointer;parametr:real);
где action − указатель на процедуру или функцию, которая должна быть
выполнена для всех объектов, включенных в группу (в данном случае для
всех СТУДЕНТОВ), parametr − передаваемая процедуре дополнительная
информация.
В качестве передаваемой методу функции может быть предложена,
например, такая: “Вывести список студентов, имеющих рейтинг не ниже
заданного”:
Procedure MyProc(p:PObject,rate:real);far;
Begin
if PStudent(p)^.GetRating>=rate then writeln(PStudent(p)^.GetName);
End;
Если pg − указатель на объект TStudentGroup, то вызов итератора бу-
дет иметь следующий вид:
pg^.ForEach(@MyProc,45); {список студентов, чей рейтинг выше 45}
7. Определение классов (объектных типов), процедур и функций по-
местить в модуль L02UXXX, где XXX- аббревиатура фамилии, имени и от-
чества, например, Иванов Петр Григорьевич − IPG.
8. Демонстрационную программу поместить в файл L02XXX.PAS.
Содержание отчета.
1. Титульный лист.
2. Постановка задачи.
3. Иерархия классов.
4. Иерархия объектов.
5. Определение классов (добавленных или измененных по сравнению
с лабораторной работой № 2).
6. Реализация для одного не абстрактного класса-группы всех мето-
дов.
7. Реализация итератора.
8. Реализация передаваемой итератору процедуры или функции.
9. Листинг демонстрационной программы.
Страницы
- « первая
- ‹ предыдущая
- …
- 24
- 25
- 26
- 27
- 28
- …
- следующая ›
- последняя »
