Читаем Освой самостоятельно С++ за 21 день. полностью

Множественное наследование

Существует возможность производить новые классы более чем от одного базового класса. Такой процесс называется множественным наследованием. Чтобы произвести подобный класс, базовые классы в объявлении разделяются запятыми. В листинге 13.3 класс Pegasus объявлен таким образом, что наследует свойства двух базовых классов — Bird и Horse. Затем программа добавляет объект Pegasus в списки объектов обоих классов.

Листинг 13.3. Множественное наследование 

1: // Листинг 13.3. Множественное наследование.

2: // Множественное наследование

3:

4: #include

5:

6: class Horse

7: {

8:    public:

9:       Horse { cout << "Horse constructor... "; }

10:      virtual ~Horse { cout << "Horse destructor... "; }

11:      virtual void Whinny const { cout << "Whinny!... "; }

12:   private:

13:      int itsAge;

14: };

15:

16: class Bird

17: {

18:    public:

19:       Bird { cout << "Bird constructor... "; }

20:       virtual ~Bird { cout << "Bird destructor... "; }

21:       virtual void Chirp const { cout << "Chirp... "; }

22:       virtual void Fly const

23:       {

24:          cout << "I can fly! I can fly! I can fly! ";

25:       }

26:    private:

27:       int itsWeight;

28: };

29:

30: class Pegasus : public Horse, public Bird

31: {

32:    public:

33:       void Chirp const { Whinny; }

34:       Pegasus { cout << "Pegasus constructor... "; }

35:       ~Pegasus { cout << "Pegasus destructor... "; }

36: };

37:

38: const int MagicNumber = 2;

39: int main

40: {

41:    Horse* Ranch[MagicNumber];

42:    Bird* Aviary[MagicNumber];

43:    Horse * pHorse;

44:    Bird * pBird;

45:    int choice,i;

Перейти на страницу:

Похожие книги

Сущность технологии СОМ. Библиотека программиста
Сущность технологии СОМ. Библиотека программиста

В этой книге СОМ исследуется с точки зрения разработчика C++. Написанная ведущим специалистом по модели компонентных объектов СОМ, она раскрывает сущность СОМ, помогая разработчикам правильно понять не только методы модели программирования СОМ, но и ее основу. Понимание мотивов создания СОМ и ее аспектов, касающихся распределенных систем, чрезвычайно важно для тех разработчиков, которые желают пойти дальше простейших приложений СОМ и стать по-настоящему эффективными СОМ-программистами. Показывая, почему СОМ для распределенных систем (Distributed СОМ) работает именно так, а не иначе, Дон Бокс дает вам возможность применять эту модель творчески и эффективно для ежедневных задач программирования.

Дональд Бокс

Программирование, программы, базы данных / Программирование / Книги по IT