LOL!Никто не понял это правильно!
Вам нужно сделать PrintMe виртуальным, потому что порядок foo / bar может измениться.
Вам нужно сделать Foo и Bar виртуальными, потому что они делают разные вещи.1005 *
Вам нужно сделать DESTRUCTOR виртуальным, потому что вы реализуете полиморфную высшую иерархию.Этого даже нет в вашем коде.Вашему конкретному тесту main()
он не нужен, но наиболее разумное, нетривиальное использование будет.
Редактировать: ОК, возможно, я тоже ошибся.Если вы не хотите, чтобы PrintMe фактически переопределял поведение при использовании через базовый указатель, тогда он НЕ должен быть виртуальным.Ваш код немного сбивает с толку.Никто бы так не поступил.