#include<iostream>
using namespace std;
class Car {
public:
virtual void get() = 0;
};
class BYD:public Car {
public:
void get() override {
cout << "比亚迪" << endl;
}
};
class VW :public Car {
public:
void get() override {
cout << "大众" << endl;
}
};
class AbFactory {
public:
virtual Car* create() = 0;
};
class BYDFactory:public AbFactory {
public:
Car* create() override {
return new BYD;
}
};
class VWFactory :public AbFactory {
public :
Car * create() override {
return new VW;
}
};
void main() {
AbFactory* f = NULL;
Car *c = NULL;
f = new BYDFactory();
c = f->create();
c->get();
delete c;
delete f;
f = new VWFactory();
c = f->create();
c->get();
delete c;
delete f;
system("pause");
}
(3)工厂模式
最新推荐文章于 2023-06-01 18:53:35 发布