工厂方法模式
来源:互联网 发布:java的ip地址校验 编辑:程序博客网 时间:2024/05/30 23:34
一个工厂负责一个产品
编程实例:
// this is a example for test factory method
#include <iostream>
using namespace std;
//abstract food
class baseFish
{
public:
// virtual ~baseFish(){};
virtual void getFood(){};
};
class steamedFish:public baseFish
{
virtual void getFood()
{
cout << "this steamed fish" <<endl;
};
};
class roastFish:public baseFish
{
virtual void getFood()
{
cout << "this roast fish" <<endl;
};
};
//abstract factory
class baseFactory
{
public:
// virtual ~baseFactory(){}
virtual baseFish* createFood(){};
};
class steamedFishFactory:public baseFactory
{
public:
baseFish * createFood()
{
return new steamedFish();
};
};
class roastFishFactory:public baseFactory
{
public:
baseFish * createFood()
{
return new roastFish;
};
};
int main()
{
baseFactory *factory = new steamedFishFactory;
baseFish *fish = factory->createFood();
fish->getFood();
return 0;
}
抽象类不可以定义对象,可以定义指针
编程实例:
// this is a example for test factory method
#include <iostream>
using namespace std;
//abstract food
class baseFish
{
public:
// virtual ~baseFish(){};
virtual void getFood(){};
};
class steamedFish:public baseFish
{
virtual void getFood()
{
cout << "this steamed fish" <<endl;
};
};
class roastFish:public baseFish
{
virtual void getFood()
{
cout << "this roast fish" <<endl;
};
};
//abstract factory
class baseFactory
{
public:
// virtual ~baseFactory(){}
virtual baseFish* createFood(){};
};
class steamedFishFactory:public baseFactory
{
public:
baseFish * createFood()
{
return new steamedFish();
};
};
class roastFishFactory:public baseFactory
{
public:
baseFish * createFood()
{
return new roastFish;
};
};
int main()
{
baseFactory *factory = new steamedFishFactory;
baseFish *fish = factory->createFood();
fish->getFood();
return 0;
}
抽象类不可以定义对象,可以定义指针
- 工厂模式 -- 工厂方法
- 工厂模式-工厂方法
- 工厂模式-工厂方法
- 工厂 > 工厂方法模式
- 工厂模式-工厂方法模式
- 工厂模式-工厂方法模式
- 工厂模式---工厂方法模式
- 【模式】工厂方法模式
- 工厂方法,抽象工厂模式
- C#工厂模式-工厂方法
- 工厂模式 和工厂方法
- 工厂模式-C-工厂方法
- 工厂模式以及工厂方法
- 简单工厂、工厂方法、抽象工厂模式
- 简单工厂、工厂方法、抽象工厂模式
- 工厂模式(简单工厂、工厂方法)
- 简单工厂|工厂方法|抽象工厂模式
- 设计模式-工厂模式(简单工厂模式+工厂方法模式)
- Sqlite使用手册
- sqlite编程-列出所有表信息
- QT模板
- 韩顺平_php从入门到精通_视频教程_第8讲_多媒体页面_标签汇总①_地图映射_学习笔记_源代码图解_PPT文档整理
- 简单工厂模式
- 工厂方法模式
- 抽象工厂模式
- Data alignment: Straighten up and fly right
- 适配器模式
- 装饰模式
- 观察者模式
- 组合模式
- 使用GDB分析核心文件
- 查看可以执行程序需要哪些动态库