Множественное наследование в языке С++
Использование наследования и множественного наследования в языке С++. Построение иерархии классов согласно схеме наследования при инициализирующем конструкторе. Функция show() для вывода значений и функция main(), показывающая иерархию наследования.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лабораторная работа |
Язык | русский |
Дата добавления | 04.04.2012 |
Размер файла | 36,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство науки и образования украины
национальный технический университет
«Харьковский политехнический институт»
Факультет КИТ
Кафедра ИИС
Лабораторная работа № 3
по курсу «Объектно-ориентированное программирование»
на тему: «Множественное наследование в языке С++»
Выполнила:
студентка группы КИТ-40
Бирченко И.В.
Проверила:
Любченко Н.Ю.
Харьков 2011
1. Цель работы
Получение практических навыков при использовании множественного наследования в языке С++.
2. Темы для предварительной обработки
ь Введение в классы
ь Перегрузка функций
ь Перегрузка операторов
ь Наследование
ь Множественное наследование
3. Задание
Необходимо построить иерархию классов согласно схеме наследования, приведенной в варианте задания. Каждый класс должен содержать инициализирующий конструктор и функцию show() для вывода значений. Функция main() должна иллюстрировать иерархию наследования.
4. Индивидуальное задание
5. Программа
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
class B1 {
int b1;
public:
B1() {};
B1(int b10) {b1=b10;}
void show_B1() {cout<<"B1 = "<<b1<<"\n";} };
class B2 {
int b2;
public:
B2() {};
B2(int b20) {b2=b20;}
void show_B2() {cout<<"B2 = "<<b2<<"\n";} };
class D1: public B1, private B2 {
int d1;
public:
D1(int x,int y,int z):B1(y),B2(z) {d1=x;}
void show_D1() {cout<<"D1 = "<<d1<<"\n";
show_B1();
show_B2(); } };
class D2: private D1 {
int d2;
public:
D2(int x,int y,int z,int i) : D1(y,z,i) {d2=x;};
void show_D2() {cout<<"D2 = "<<d2<<"\n";
show_D1(); } };
class D3: public D2 {
int d3;
public:
D3(int x,int y,int z,int i,int j) : D2(y,z,i,j) {d3=x;};
void show_D3() {cout<<"D3 = "<<d3<<"\n";
show_D2(); } };
int main() {
clrscr();
D3 temp(100,200,300,400,500);
cout<<"D3 temp(100,200,300,400,500);\n";
cout<<"Ijerarhija classa D3..=>\n";
temp.show_D3();
getch();
return 0; }
6. Результаты
7. Выводы
При выполнении лабораторной работы изучены вопросы:
ь наследование;
ь множественное наследование.
Размещено на Allbest.ru
Подобные документы
Реализация множественного наследования в области учета транспортных средств. Принцип работы приложения в текстовой форме, его структура. Таблица свойств объектов и идентификаторов. UML-диаграмма. Описание программы на примере с представлением экранных.
курсовая работа [557,4 K], добавлен 05.11.2016Цели объектно-ориентированного программирования, абстрактные классы и адреса базовых классов, множественное и виртуальное наследование. Инициализация элементов производного класса, программный вызов конструкторов базового и производного классов.
реферат [21,8 K], добавлен 31.10.2011Иерархия и типы классов в программе, особенности обеспечения наследования. Наследование по принципу подчиненности. Включение в другие классы или делегирование. Понятие изолированных классов. Конструкторы и деструкторы. Иерархия классов NET Framework.
презентация [91,8 K], добавлен 09.12.2013Изображение класса на диаграмме UML. Инкапсуляция как средство защиты его внутренних объектов. Использование принципа полиморфизма для реализации механизма интерфейсов. Создание новых классов путем наследования. Ассоциация как вид отношений между ними.
лекция [516,6 K], добавлен 03.12.2013Основные приемы работы с классами и объектами. Перегрузка функций и операторов. Массивы объектов. Реализация одиночного наследования. Множественное наследование. Виртуальные функции. Шаблоны: понятие и функциональные особенности, свойства и применение.
методичка [1,1 M], добавлен 16.04.2012Определение ООП, его основные концепции. Инкапсуляция как свойство системы, позволяющее объединить данные и методы, работающие с ними в классе. Пример наследования и полиморфизма. Чисто виртуальная функция. Особенности реализации, взаимодействие объектов.
презентация [65,2 K], добавлен 05.01.2014Входные данные программы в файле "School.txt". Метод решения задачи и функциональная структура программы. Main – главная функция, формирование таблицы данных из файла. Блок-схема функции вывода фамилии победителей, занявших первые три призовых места.
курсовая работа [68,4 K], добавлен 17.06.2012Сущность понятия "комплексное число". Умножение, деление и сложение. Класс Number и два последующих Rational Number Operation и Complex Number. Схема наследования классов исключений. Тестирование программы. Схема работы приложения. Интерфейс программы.
курсовая работа [607,3 K], добавлен 17.05.2015Рассмотрение основных типов данных: значений и ссылок. Отражение объектно-ориентированной методологии одиночного наследования IL в иерархической структуре общей системы типов. Виды интрефейсов и делегатов. Встроенные типы данных в спецификации CTS.
курсовая работа [99,0 K], добавлен 09.08.2015Причины возникновения объектно-ориентированного программирования. Графическое представление классов; их отличия от других абстрактных типов данных. Типы абстракции, используемые при построении объекта. Сущность инкапсуляции, наследования и полиморфизма.
контрольная работа [222,1 K], добавлен 04.06.2014