我知道解决了与此问题相关的问题,但我仍然无法弄清楚如何解决我的问题.
我有这样的事情:
class Base
{
static Base* createBase()
{
Base *b = new Base();
... //does a lot of weird things
return b;
}
}
class Child : public Base
{
static Child* createChild()
{
Child *c = createBase(); // error
return c;
}
}
Run Code Online (Sandbox Code Playgroud)
我知道为什么它不起作用,但我必须找到一种方法来做到这一点.createBase函数做了很多事情,所以我不想重新编码它.
有什么建议?