抽象工厂
来源:互联网 发布:青岛惠普大数据烂尾 编辑:程序博客网 时间:2024/05/17 01:03
#include <iostream>class AbstractProductA{public: virtual ~AbstractProductA(){}protected: AbstractProductA(){}};class AbstractProductB{public: virtual ~AbstractProductB(){}protected: AbstractProductB(){}};class ProductA1:public AbstractProductA{public: ProductA1(){ std::cout << "ProductA1...."<< std::endl;} ~ProductA1(){}};class ProductA2:public AbstractProductA{public: ProductA2(){std::cout << "ProductA2...."<< std::endl;} ~ProductA2(){}};class ProductB1:public AbstractProductB{public: ProductB1(){std::cout << "ProductB1...."<< std::endl;} ~ProductB1(){}};class ProductB2:public AbstractProductB{public: ProductB2(){std::cout << "ProductB2...."<< std::endl;} ~ProductB2(){}};//-----------------------------------------------------------------class AbstractFactory{public: virtual AbstractProductA* CreateProductA()=0; virtual AbstractProductB* CreateProductB()=0; virtual ~AbstractFactory(){}protected: AbstractFactory(){}};class CreateFactory1 : public AbstractFactory{public: CreateFactory1(){} ~CreateFactory1(){} AbstractProductA *CreateProductA(){ return new ProductA1;} AbstractProductB *CreateProductB(){ return new ProductB1;}};class CreateFactory2:public AbstractFactory{public: CreateFactory2(){} ~CreateFactory2(){} AbstractProductA *CreateProductA(){ return new ProductA2;} AbstractProductB *CreateProductB(){ return new ProductB2;}};int main(){ AbstractFactory *f1 = new CreateFactory1(); f1->CreateProductA(); f1->CreateProductB(); AbstractFactory *f2 = new CreateFactory2(); f2->CreateProductA(); f2->CreateProductB(); return 0;}
0 0
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- 抽象工厂
- HDU1272 小希的迷宫 并查集判环
- 使用maven deploy将项目热部署到tomcat
- 看DynamicLoadApk源码有感
- 关于P10的‘前’置指纹猜想——写在P10发布‘前’
- oracle隐含参数的查看与修改
- 抽象工厂
- Win7和linux双系统主引导丢失解决办法
- linux date命令计算时间
- ubuntu 16.04+kinect v1配置运行 Kintinuous
- POJ2524 Ubiquitous Religions 并查集
- LeetCode 84. Largest Rectangle in Histogram(Hard)
- Spark on Yarn集群搭建
- hibernate 延迟加载的错误
- 2017/2/20-2017/2/26