為其他對(duì)象提供一種代理以控制對(duì)這個(gè)對(duì)象的訪問讥蟆。這樣實(shí)現(xiàn)了業(yè)務(wù)和核心功能分離。
#include<iostream>
using namespace std;
class IFactory{
virtual void makeProduct()=0;
};
class PhoneFactory : public IFactory{
virtual ~PhoneFactory(){}
PhoneFactory(){}
void makeProduct()
{
cout<<"生產(chǎn)手機(jī)"<<endl;
}
};
class FoxconnProxy : public IFactory{
virtual ~FoxconnProxy(){}
FoxconnProxy(IFactory *real)
{
m_real = real;
}
void makeProduct()
{
m_real->makeProduct();
}
private:
IFactory *m_real;
};