8911

Множественное наследование в языке С++

Лабораторная работа

Информатика, кибернетика и программирование

Множественное наследование в языке С++. 1. Цель работы Целью лабораторной работы является получение практических навыков при использовании множественного наследования в языке С++. 2. Темы для предварительного изучения Введение в классы П...

Русский

2013-02-19

195.5 KB

14 чел.

Множественное наследование в языке С++.

1. Цель работы

Целью лабораторной работы является получение практических навыков при использовании множественного наследования в языке С++.

2. Темы для предварительного изучения

  •  Введение в классы
  •  Перегрузка функций
  •  Перегрузка операторов
  •  Наследование
  •  Множественное наследование

3. Варианты индивидуальных заданий

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

4. Задание к выполнению

Необходимо построить иерархию классов согласно схеме наследования, приведенной в варианте задания.

Каждый класс должен содержать инициализирующий конструктор и функцию show для вывода значений.
Функция
main должна иллюстрировать иерархию наследования.

5. Пример выполнения (вариант 25)


Сначала создадим необходимую иерархию классов. Следуя ей мы получим:

class B{

 int a;

public:

};

class D1: public B {

int b;

public:

};

class D2: private B{

int c;

public:

};

class D3: private D1, public D2 {

int d;

public:

};

class D4: public D2, private D1 {

int e;

public:

};

Создадим теперь во всех классах конструкторы, которые смогли бы по цепочке наследования инициализировать свои переменные и передавать остальные значения дальше вверх вплоть до конструктора базового класса.

 B(int x) { a=x; }

D1(int x, int y) : B(y) { b=x;};

D2(int x, int y) : B(y) { c=x;};

D3(int x, int y, int z, int i, int j) : D1(y,z), D2(i,j) { d=x;}

D4(int x, int y, int z, int i, int j) : D1(y,z), D2(i,j) { e=x;}

Теперь добавим в каждый класс функцию show, которая бы выводила на экран переменную из секции private класса, которому принадлежит сама и вызывала бы функции show тех классов, которые стоят выше по иерархии наследования.

 void show_B() { cout <<"B=   "<< a << "\n"; }

void show_D1() { cout << "D1=  "<< b << "\n"; show_B();}

void show_D2() { cout <<"D2=  "<< c << "\n"; show_B();}

void show_D3() { cout << "D3=  "<<d << "\n"; show_D1(); show_D2();}

void show_D4() { cout <<"D4=  "<< e << "\n"; show_D1(); show_D2();}


Демонстрация иерархии наследования

main() {

clrscr();

D3 temp(100,200,300,400,500);

D4 temp1(1,2,3,4,5);

cout << "D3 temp(100,200,300,400,500);\n";

cout << "D4 temp1(1,2,3,4,5);\n";

cout<< "\nСледуя иерархии класса D3: \n";

temp.show_D3();

cout<< "\nСледуя иерархии класса D4\n";

temp1.show_D4();

getch();

return 0;}


 

А также другие работы, которые могут Вас заинтересовать

77398. Энергия биомассы и методы ее преобразования 102.5 KB
  Энергия биомассы и методы ее преобразования Биомасса как источник энергии. Энергетическое использование биомассы реализуется по трем основным направлениям: непосредственное сжигание биомассы древесины водорослей растений в атмосфере воздуха; извлечение из биомассы таких энергоносителей как биогаз и спирты; использование теплоты выделяемой при брожении органическими отходами навоз помет опилки и...
77399. Актуальность использования нетрадиционных и возобновляемых источников энергии 103 KB
  Актуальность использования нетрадиционных и возобновляемых источников энергии Понятие традиционной энергетики. Традиционная энергетика совокупность технических устройств использующих хорошо освоенные в технологическом отношении энергетические источники и способы преобразования получаемой от них энергии в первую очередь в электрическую. Их отличительные особенности: значительная единичная мощность; работа в общей электросети возможна работа и в тепловой сети; единый...
77400. Определение токсичных выбросов в атмосферу от объектов традиционной энергетики 142 KB
  Определяется полное количество тепла полезно использованное в паровом котле кВт 1. Значения удельной энтальпии энергоносителя определяется при известных его параметрах по таблицам теплофизических свойств воды и водяного пара. Определяется расход топлива на каждый котел установленный в тепловом источнике г с 1. Определяется расход топлива на все котлы установленные в тепловом источнике г с 1.
77401. Признание брака недействительным 44 KB
  Понятие и основания признания брака недействительным. Под признанием брака недействительным понимается аннулирование брака и всех его правовых последствий с момента его заключения. Признание брака недействительным по правовой природе санкция за нарушение требований установленных семейным законодательством.
77402. Правоотношения супругов 135.5 KB
  Личные неимущественные права и обязанности супругов. Каждый из супругов вправе выбирать место жительства место пребывания профессию и род занятий. СК не обязывает супругов проживать совместно но это более благоприятно устанавливая свободу в выборе место пребывания и места жительства предоставляет выбор и свободу жить раздельно может быть даже и весь период супружеской жизни.
77404. Правоотношение родителей и детей 168 KB
  В данном случае это происхождение ребёнка от конкретных лиц удостоверенное в установленном законом порядке. Установление происхождения ребёнка рождённого в браке. Происхождение ребёнка рождённого в браке установить довольно проще чем рождённого вне брака. Установление происхождения ребёнка рождённого в браке происходит в административном порядке.
77405. Алиментные обязательства членов семьи 75.5 KB
  Алиментное обязательство является имущественным правоотношением и средства предоставляющиеся в качестве алиментов представляют собой товар. В настоящее время алиментные обязательства могут возникать не только на основании закона но и на основании соглашения об уплате алиментов. Взаимность и возмездность в том что если родитель в своё время уклонялся от выполнения обязанности по содержанию ребёнка суд может освободить ребёнка от уплаты алиментов. Плательщик алиментов выплачивает алименты не предполагая получить какое-либо имущественное...
77406. Усыновление (удочерение) детей 102.5 KB
  Что касается усыновления он в СК не раскрыт используется в различных аспектах: Правовой институт который представляет собой систему правовых норм посвящённых подбору усыновителей определению порядка передачи ребёнка на усыновление условия усыновления установление порядка и правовых последствий прекращения отношений по усыновлению. Усыновление как форма устройства определяет юридическую судьбу ребёнка. Усыновление обладает приоритетом именно для того чтобы обеспечить наилучшие интересы ребёнка существуют определённые правила...