Из-за моего устройства я не могу использовать виртуальные функции.Предположим, у меня есть:
class Base
{
void doSomething() { }
};
class Derived : public Base
{
void doSomething() { }
};
// in any place
{
Base *obj = new Derived;
obj->doSomething();
}
obj->doSomething()
вызовет только Base::doSomething()
Есть ли способ с Base *obj
, чтобы вызвать doSomething
из Derived
?
Я знаю, что могу просто поставить virtual
перед doSomething()
из Base
, это решит проблему, но я ограничен моим устройством, компилятор его не поддерживает.