我有一个基类,当我调用构造函数时,该基类访问系统并根据配置,并向我返回它的子类。
主要思想和类是抽象自己的工厂,并根据需要返回到子类,具体取决于配置系统。
我以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,所以不知道我应该使用什么代码。