Вы не создаете никаких объектов типа "Base" - предоставляя Base чисто виртуальный член, вы прямо заявляете, что этот класс не может существовать сам по себе, но только через производные классы. То, что вы хотите создать, это указатели или ссылки на базу:
Derived1 x;
Derived2 y;
// Somewhere inside Derived1:
Base & rb = x;
// Somewhere inside Derived2:
Base * pb = &y;
Тогда вы можете использовать полиморфизм, обрабатывая rb
и pb
равномерно, без необходимости знать конкретный тип x
и y
.