/*************************************************************************
> File Name: AbstractFactory.cpp
> Author: Jungle
> Mail: zhouk517@163.com
> Created Time: 2014年03月12日 星期三 10时42分25秒
************************************************************************/
#include <iostream>
using namespace std;
#include "AbstractFactory.h"
#include "Product.h"
AbstractFactory::AbstractFactory()
{
}
AbstractFactory::~AbstractFactory()
{
}
ConcreteFactory1::ConcreteFactory1(){
cout<<"ConcreteFactory1.."<<endl;
}
ConcreteFactory1::~ConcreteFactory1(){}
AbstractProductA* ConcreteFactory1::CreateProductA()
{
return new ProductA1();
}
AbstractProductB* ConcreteFactory1::CreateProductB()
{
return new ProductB1();
}
ConcreteFactory2::ConcreteFactory2(){
cout<<"ConcreteFactory2..."<<endl;
}
ConcreteFactory2::~ConcreteFactory2(){}
AbstractProductA* ConcreteFactory2::CreateProductA()
{
return new ProductA2();
}
AbstractProductB* ConcreteFactory2::CreateProductB()
{
return new ProductB2();
}