|
Для начала зачем вообще нужно наследование в С++? Что же оно даёт программисту, какие удобства?
Попробую пояснить на жизненном примере. Стул, стол, шкаф, тумбочка, диван - обобщенно можно назвать мебель. В ряде случаев нам не нужно конкретизировать какая именно мебель, например, мы говорим:-"Мебель расставлена в комнате не так!".
Другой пример. Каменщик, плотник, столяр - рабочие. Когда мы хотим выдать им команду, нам достаточно сказать:-"Рабочие работайте" и каждый займется своим делом.
Тоже происходит в ПО. Для того, чтобы не заморачиваться с выделением каждого типа объекта при вызове того или иного метода, делается наследование, метод Базового класса делают Виртуальным, а в наследуемом уточняют его. Достаточно часто в методе наследуемого класса сначала вызывают метод Базового класса (Base::work(); ), а затем дописывают индивидуальный код наследуемого класса.
__________________
Не важна реальность, важно как мы к ней относимся!
|