class Base
{
public:
string Test() { return "hi"; }
};
class Derived : public Base
{
public:
int Test() { return 3; }
}
Я хочу "привет" из базы.Как можно заставить string s = Derived().Test()
работать?И нет, Test
не имеет параметров.
Я пробовал using Base::Derived
, но кажется, что перегруженные функции, которые отличаются только типами возвращаемых данных, не наследуются / не предоставляются.Я не могу ссылаться на Base
из кода клиента, так как Base
будет сгенерировано шаблономКлиент знает тип, который он хочет.Я не мог заставить Test<string>()
работать через наследование.