美文网首页
常用设计模式笔记

常用设计模式笔记

作者: LeeYee11 | 来源:发表于2017-06-14 21:51 被阅读0次

Factory Method

对如下Product类

/*Product.h*/
class Product{
public:
    Product();
    Product(int);
    ~Product();
    int getId();
private:
    int id;
};

/*Product.cpp*/
#include "Product.h"
Product::Product(){ id = -1; }
Product::Product(int i){ id = i; }
int Product::getId(){ return id; }

构造一个Factory类用于产生Product

/*Factory.h*/
#include "Product.h"
class Factory{
public:
    Product* makeProduct(int);
};

/*Factory.cpp*/
#include "Product.h"
#include "Factory.h"
Product* Factory::makeProduct(int i){
    Product *newProduct = new Product(i);
    return newProduct;
}

Factory类的职责是调用makeProduct方法并传入一个id,返回一个Product实例的指针。

Factory *myFactory = new Factory();
Product *myProduct=myFactory->makeProduct(3);

Abstract Factory

相关文章

网友评论

      本文标题:常用设计模式笔记

      本文链接:https://www.haomeiwen.com/subject/sdueqxtx.html