Объектно-ориентированное программирование на языке С++. Лясин Д.Н - 48 стр.

UptoLike

Составители: 

48
Определение класса, наследуемого от некоторых, уже сущест-
вующих классов, производится следующим образом:
class имя_класса: список_базовых_классов
{//определение собственных компонент
//переопределение унаследованных компонент базовых классов
};
Здесь список_базовых_классов это перечень (через запятую) тех классов,
от которых будет унаследован определяемый класс. Эти классы к моменту
определения производного класса
должны быть определены. После подобного
объявления все общедоступные и защищенные компоненты базовых классов
становятся компонентами производного класса без дополнительного определения.
В некоторых источниках базовый класс называют суперклассом, а производный -
подчиненным классом.
Общие правила порождения классов:
1) количество базовых классов в списке порождения может быть любым;
2) один и тот же класс
не может быть задан в списке порождения дважды;
3) базовый класс к моменту определения производного должен быть опре-
делен или описан;
4) ни базовый, ни порожденный класс не могут быть определены с помо-
щью ключевого слова union;
Рассмотрим использование механизма наследования в С++ на конкретном
примере. Определим классы А, В и С, находящиеся в отношениях наследования:
//Листинг 20. Пример простого наследования классов
struct A
{int a1;
public:
int a2;
void funcA()
};
struct B:A //наследуем класс В от А
{int b1;
               Определение класса, наследуемого от некоторых, уже сущест-
         вующих классов, производится следующим образом:
               class имя_класса: список_базовых_классов
               {//определение собственных компонент
                 //переопределение унаследованных компонент базовых классов
               };
          Здесь список_базовых_классов – это перечень (через запятую) тех классов,
от которых будет унаследован определяемый класс. Эти классы к моменту
определения производного класса должны быть определены. После подобного
объявления все общедоступные и защищенные компоненты базовых классов
становятся компонентами производного класса без дополнительного определения.
В некоторых источниках базовый класс называют суперклассом, а производный -
подчиненным классом.
        Общие правила порождения классов:
1)          количество базовых классов в списке порождения может быть любым;
2)          один и тот же класс не может быть задан в списке порождения дважды;
3)          базовый класс к моменту определения производного должен быть опре-
делен или описан;
4)          ни базовый, ни порожденный класс не могут быть определены с помо-
щью ключевого слова union;
          Рассмотрим использование механизма наследования в С++ на конкретном
примере. Определим классы А, В и С, находящиеся в отношениях наследования:
     //Листинг 20. Пример простого наследования классов
     struct A
     {int a1;
     public:
     int a2;
     void funcA()
     };

     struct B:A //наследуем класс В от А
     {int b1;

                                              48