简单工厂模式(C++)
#include <iostream> using namespace std; class Fruit { public : virtual void getFruit() = 0; }; class Banana :public Fruit { public : virtual void getFruit() { printf("我是香蕉"); } }; class Apple :public Fruit { public: virtual void getFruit() { printf("我是苹果"); } }; class Factory { public: Fruit *create(char *p) { if (strcmp(p, "banana") == 0) { return new Banana; } else if (strcmp(p, "Apple") == 0) { return new Apple; } else { return NULL; } } }; void main() { Factory *fact=new Factory; Fruit *fru; fru=fact->create("banana"); fru->getFruit(); fru = fact->create("Apple"); fru->getFruit(); }
posted on 2016-03-26 11:05 Geography爱好者 阅读(208) 评论(0) 收藏 举报
浙公网安备 33010602011771号