Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/studb20/public_html/index.php on line 4
 Неизменность базового класса - ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 9) онлайн - Studbook
Главная->Інформатика та програмування->Содержание->Неизменность базового класса

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 9) онлайн

Неизменность базового класса

Вспомним, что при наследовании базовый класс остается неизменным. В функ- ции main() программы COUNTEN мы определили объект типа Counter:

 

Counter c2;        // Объект базового класса

Такие объекты ведут себя так, как если бы класс CountDn не существовал.

Заметим также, что наследование не работает в обратном направлении. Базо- вому классу и его объектам недоступны производные классы. В нашем случае это означает, что объекты класса Counter, такие, как c2, не могут использовать метод operator--() класса CountDn. Если мы хотим иметь возможность уменьше- ния счетчика, то объект должен быть класса CountDn, а не класса Counter.

 

10