Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка 1.doc
Скачиваний:
33
Добавлен:
13.02.2015
Размер:
689.66 Кб
Скачать

Программа работы

  1. Создать новый проект и сохранить все его файлы в папке с именем ‘…\Лабораторная работа № 6’.

  2. Создать новый модуль Unit2и в его заголовочной части с расширениемhобъявить класс с лю­бым именем, который будет содержать все разделы доступа.

  3. В каждом разделе, начиная с private, объявить по одному полю с различными именами и типамиchar,intиdouble.

  4. Создать новый модуль Unit3и подключить к нему модульUnit2в заголовочном разделе с расширениемh.

  5. Объявить в этом разделе модуля Unit3второй класс, который будет наследником первого класса с режимом наследованияpublic, и не будет содержать ни одного элемента.

  6. Подключить модуль Unit3к модулю главной формыUnit1и создать на ней компонентыEdit1,Edit2и кнопкуButton1.

  7. В обработчике нажатия кнопки Button1объявить объектную переменную с типом созданного класса-наследника, создать объект и попытаться обратиться ко всем его полям.

  8. На основе этой попытки записать в отчет объявленные классы, а также таблицу дос­тупа к унаследованным полям объекта из модуля Unit1. Проинициализировать первое доступное поле объекта значением, которое будет задано пользователем в компонентеEdit1, вывести в компонентEdit2значение самого поля после инициализации и запустить программу на выполнение.

  9. Записать в отчет обработчик нажатия кнопки Button1и результат выпол­нения программы.

  10. В классе-наследнике, изменить режим наследования с publicнаprotectedи попытаться обратиться ко всем полям класса наследника.

  11. На основе этой попытки записать в отчет класс наследник, а также таблицу дос­тупа к унаследованным полям объекта из модуля Unit1.

  12. В классе-наследнике, изменить режим наследования с protectedнаprivateи попытаться обратиться ко всем полям класса наследника.

  13. На основе этой попытки записать в отчет класс наследник, а также таблицу дос­тупа к унаследованным полям объекта из модуля Unit1.

  14. В классе-наследнике, изменить режим наследования с privateнаpublicи объявить конструктор класса.

  15. В исполняемом разделе модуля Unit3с расширениемcppопределить конструктор класса наследника и попытаться обратиться ко всем его полям.

  16. На основе этой попытки записать в отчет класс наследник, а также таблицу дос­тупа к унаследованным полям объекта из конструктора класса.

  17. Повторить предыдущий пункт для режимов наследования protectedиprivate.

  18. Создать новый модуль Unit4и подключить к нему модульUnit3в заголовочном разделе с расширениемh.

  19. Объявить в этом разделе модуля Unit4третий класс, который будет наследником второго класса с режимом наследованияpublic, и объявить в нем конструктор.

  20. В исполняемом разделе модуля Unit4с расширениемcppопределить конструктор класса пранаследника и попытаться обратиться ко всем его полям.

  21. На основе этой попытки записать в отчет класс пранаследник, а также таблицу дос­тупа к унаследованным полям из конструктора класса пранаследника.

  22. Повторить предыдущий пункт для режимов наследования protectedиprivateкласса наследника, в модулеUnit3.

  23. Разработать программу, которая вычисляла бы площадь и периметр круга или квадрата. Для этого добавить к проекту новую форму, сделать её главной на закладке Forms->Main Form, выполнив пункт менюProject->Options, и разместить на ней компоненты Shape1, RadioGroup1, Label1Label3 и Edit1Edit3.

  24. В обработчике выбора кнопок компонента RadioGroup1предусмотреть изменение формы фигуры (свойствоShapeкомпонентаShape1) и надписиLabel1для компонентаEdit1(радиусилидлинастороны).

  25. В обработчике нажатия клавиши EnterкомпонентаEdit1предусмотреть объявление объекта с базовым типом, создание объекта с текущим типом выбранной фигуры и вывод её площади и периметра в компонентыEdit2иEdit3.

  26. При разработке программы учесть, что поле FSizeзадается в конструкторе базового классаTShape, а два классаTCircleиTSquareнаследуют его, добавляя методы нахождения площади (Area) и периметра (Perimeter) соответствующих фигур.

  27. Протестировать разработанную программу и записать в отчет объявленные классы, их методы, а также обработчик нажатия клавиши EnterкомпонентаEdit1.