我有一个基类,当我调用构造函数时,该基类访问系统并根据配置,并向我返回它的子类。
主要思想和类是抽象自己的工厂,并根据需要返回到子类,具体取决于配置系统。

我以C++的草稿形式表达了我的想法,不一定是他特有的,而是使用其他语言(例如Java等)的通用方法。

有可能吗

例:

class system {
    public:
        Config config;
}

class Base {
    public:
        Base() {
            if(System.getInstance().config == Config.FooMode) {
                Foo foo = new Foo();
                return foo;
            }
        };
};

class Foo: public Base {
    public:
        float a;
        float b;
        float c;
}

class Boo: public Base {
    public:
        float d;
        float f;
        float g;
}

int main() {
    Point point = new Point();
    return 0;
}

最佳答案

不可能。构造函数不返回任何内容,请使用另一个方法作为factory方法。

class Base
{
  Foo makeFoo()
  {
  }
  ...
};

我混淆了您的代码是C++还是Java,所以不知道我应该使用什么代码。

10-07 20:19
查看更多