Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум по ТРПОСУ.doc
Скачиваний:
10
Добавлен:
04.05.2019
Размер:
351.23 Кб
Скачать

Министерство образования Республики Беларусь

Учреждение образования

«Белорусский государственный университет информатики

и радиоэлектроники»

Кафедра систем управления

Д. А. Ганьшин, с.В. Снисаренко Информационные технологии и проектирование систем управления

Лабораторный практикум

для студентов всех форм обучения

Под общей редакцией А.Г.Корбита

Минск 2007

УДК (075.8)

ББК 32.973.202-018.2я7

Г 19

Рецензент:

доц. кафедры СУ ВМиП,

канд. техн. наук В.Л. Бусько

Ганьшин Д.А., Снисаренко С.В.

Информационные технологии и управление в технических системах: Лаб. Практикум для студ. всех форм обучения

/ Д. А. Ганьшин, С.В. Снисаренко – Мн.: БГУИР, 2007.– 40 с.: ил.

ISBN

Целью настоящего издания пособия является оказание помощи студентам специальности «Информационные технологии и управление в технических системах» при выполнении ими лабораторных работ по курсу «Информационные технологии и управление в технических системах»

В пособии рассматриваются вопросы, относящиеся к использованию технологии объектно-ориентированного программирования на языке C++ при проектировании систем управления. Описание методологии построения и использования основных принципов ООП сопровождается примерами. Предназначено для студентов 2-го курса дневной формы обучения.

Под общей редакцией А.Г.Корбита

УДК 075.8

ББК 32.973.202-018.2я7

ISBN © Ганьшин Д. А., Снисаренко С.В. 2007

© БГУИР, 2007

Содержание

Введение 4

Лабораторная работа № 1 Программирование алгоритмов с использованием динамических массивов 5

Лабораторная работа № 2 Классы. Программирование линейных алгоритмов с использованием функций инициализации set() и вывода результатов print() 11

Лабораторная работа № 3 Классы. Программирование линейных алгоритмов с использованием конструктора, деструктора, friend - функции инициализации set() и функции вывода результатов print() 16

Лабораторная работа № 4 Класс «Динамическая строка» и перегрузка операций 19

Лабораторная работа № 5 Наследование классов, механизм виртуальных функций 25

Лабораторная работа № 6 Программирование шаблона классов 29

Лабораторная работа № 7 Множественное наследование с использованием абстрактных базовых классов, файлового ввода-вывода с применением потоков С++, функций обработки исключительных ситуаций 32

Литература 39

Введение

С++ является языком объектно-ориентированного программирования (ООП). Объект - абстрактная сущность, наделенная характеристиками объектов реального мира. Как и любой другой язык ООП, С++ использует три основные идеи ООП - инкапсуляцию, наследование и полиморфизм.

Инкапсуляция - сведение кода и данных воедино в одном объекте, получившим название класс.

Наследование - наличие в языке ООП механизма, позволяющего объектам класса наследовать характеристики более простых и общих типов. Наследование обеспечивает как требуемый уровень общности, так и необходимую специализацию.

Полиморфизм - дословный перевод с греческого "много форм". В С++ полиморфизм реализуется с помощью виртуальных функций, которые позволяют в рамках всей иерархии классов иметь несколько версий одной и той же функции. Решение о том, какая именно версия должна выполняться в данный момент, определяется на этапе выполнения программы и носит название позднего связывания.

Существует несколько реализаций системы, поддерживающих стандарт С++, из которых можно выделить реализации Visual C++ (Microsoft) и Builder C++ (Inprise). Отличия относятся в основном к используемым библиотекам классов и средам разработки. В действительности в С++ программах можно использовать библиотеки языка С, библиотеки классов С++, библиотеки визуальных классов VCL (Builder C++), библиотеку MFC (Visual C++ и Builder C++).

Язык С++ является родоначальником множества объектно-ориентированных языков, таких как Java, C#, PHP и др.

Данное пособие предназначено для начинающих изучение технологии ООП для проектирования систем управления на основе С++.