Язык программирования C++ от Страуструпа

Иерархия классов


Производный класс сам в свою очередь может быть базовым классом:

class employee {                   /* ... */ };

class manager : public employee {  /* ... */ };

class director : public manager {  /* ... */ };

Такое множество связанных между собой классов обычно называют иерархией классов. Обычно она представляется деревом, но бывают иерархии с более общей структурой в виде графа:

class temporary {                  /* ... */ };

class secretary : public employee { /* ... */ };

class tsec

  : public temporary, public secretary { /* ... */ };

class consultant

  : public temporary, public manager { /* ... */ };

Видим, что классы в С++ могут образовывать направленный ацикличный граф (подробнее об этом говорится в $$6.5.3). Этот граф для приведенных классов имеет вид:



Содержание раздела