0
有一个接口抽象基类的设计问题?
class abc {
public:
virtual int foo() = 0;
...
}
class concrete1: public abc {
public:
int foo() {
..
}
class concrete2 : public abc {
public:
int foo() {
..
}
}
现在我的主要节目,我需要构建基于可变
abc *a;
if (var == 1)
a = new concrete1();
else
a = new concrete2();
值类很显然,我不希望在节目中这两条线无处不在(请注意我在这里已经简化了,所以事情很清楚)。如果有什么设计模式,我应该使用哪种设计模式?
不要忘记你在基类中的纯虚拟析构函数。也 ';'应该是在类定义的关闭'}'之后。 – 2008-12-30 08:03:26