
- •Задание №1 (Калькулятор)
- •Задание №2 (Внешняя функция)
- •Лабораторная работа № 2
- •Задание № 3 (Динамический массив – объект класса)
- •Задание № 4 (Динамическая таблица – объект класса)
- •Лабораторная работа №3
- •Задание № 5 ( Класс Stack и наследование)
- •Задание № 6 (Динамический полиморфизм и шаблоны)
- •Лабораторная работа №4
- •Задание № 7 (Библиотека стандартных шаблонов)
- •Задание № 8 (Обработка исключительных ситуаций)
- •Лабораторная работа № 5
- •Задание № 9 (Приложение бд)
- •Задание № 10 (Рисунки)
- •Задание № 12 (Меню)
- •Задание № 13 (Многомодульное приложение)
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ
Государственное образовательное учреждение
высшего профессионального образования
“ЧЕРЕПОВЕЦКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ”
ИНСТИТУТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
Кафедра АВТОМАТИЗАЦИИ И СИСТЕМ УПРАВЛЕНИЯ
методическое пособие
к лабораторным работам по дисциплине
объектно-ориентированное программирование
на языке С++
Автор: КТН, доцент В.В.Ходырев
Череповец, 2008 г.
ЛАБОРАТОРНАЯ РАБОТА № 1
Тема: Освоение основных приемов работы в визуальной объектно-ориентированной среде С++ Builder.
Цели: 1. Освоение приемов работы с проектом в среде C++ Builder.
2. Освоение технологии отладки и тестирования программ в среде С++ Builder.
3. Освоение технологии работы с компонентами визуальной среды.
Вопросы для подготовки:
Структура визуальной среды С++ Builder.
Структура проекта в С++ Buildr.
Преимущества и недостатки алгоритмической и объектно-ориентированной декомпозиции и взаимосвязь между ними.
Основные концепции объектно-ориентированного программирования.
Создание переносимого приложения.
Задание №1 (Калькулятор)
Задача: Создать программу, выполняющую простейшие математические операции.
Последовательность выполнения: (см. инструкцию …)
Задание №2 (Внешняя функция)
Задача: В соответствии с заданным вариантом (см. Приложение В) написать определение внешней функции. Формирование параметров и вызов функции обеспечить в обработчике события OnClick для кнопки Start. Все исходные данные, включая массив, передать функции через список параметров. Массив создать в динамической памяти. Для задания значений исходных данных и элементов массива использовать редактируемые поля визуальных компонент TEdit (см. Инструкцию … п/п 9.3), TMemo (см. Инструкцию … п/п 9.10) или TStringGrid (см. Инструкцию … п/п 9.7) или специальные диалоговые окна (см. Инструкцию … п/п 9.13).
Лабораторная работа № 2
Тема: Освоение технологии классов.
Цели: 1. Освоение технологии описания классов, определения и использования объектов.
2. Освоение технологии отладки и тестирования программ в среде С++Builder.
3. Освоить технологию работы с компонентами визуальной среды.
Вопросы для подготовки:
Синтаксис описания классов.
Конструкторы и деструкторы.
Конструктор копии.
Статические элементы класса.
Задание № 3 (Динамический массив – объект класса)
Задача: Используя проект, созданный в задании 2, решить задачу на основе технологии классов. В конструкторе класса обеспечить создание динамического массива (матрицы) и его инициализацию. Все исходные данные представить как компонентные данные. Все функции, предназначенные для формирования значений компонентных данных и вычислений, должны быть так же компонентными. Технология создания динамического массива (матрицы) и его визуализации приведена в Инструкции (п/п 14.3, 14.11).
Задание № 4 (Динамическая таблица – объект класса)
Задача: В соответствии с заданным вариантом (см. Приложение С) создать динамический массив объектов структурного типа на основе технологии классов. Описание объекта представить с помощью структурного типа. Массив структурных объектов создать в динамической области памяти на основе технологии классов. Технология создания динамической таблицы аналогична созданию динамической матрицы и включает два этапа: создание динамического массива указателей на объект структурного типа и его инициализация адресами динамических объектов структурного типа. Функции доступа к элементам структурного объекта и обработки таблицы включить в состав класса. Технология визуализации и обработки таблицы представлена в Инструкции …(п/п 14.11).
Лабораторная работа №3
Тема: Освоение технологии классов. Наследование и динамический полиморфизм.
Цели:
1. Освоение технологии наследования.
2. Освоение технологии создания и использования объектов.
3. Исследование полиморфного поведения объектов.
4. Освоение определения и использования шаблонов.
Вопросы для подготовки:
1. Операция присваивания для объектов.
2. Простое, множественное и виртуальное наследование.
3. Виртуальные функции и динамический полиморфизм.
4. Перегрузка функций.
5. Шаблоны.