代理模式

来源:互联网 发布:电脑锣编程培训 编辑:程序博客网 时间:2024/06/10 04:33
#include <iostream>
using namespace std;
class Subject
{
public:
virtual void sellBook()=0;
};


class RealSubject:public Subject
{
public:
void sellBook()
{
cout<<"买书"<<endl;
}
};


class ProxySubject{
RealSubject* real;
public:
void sellBook()
{
if(real==NULL)
{
real=new RealSubject();
}
onSale();
real->sellBook();
yhq();
}
void onSale()
{
cout<<"打折"<<endl;
}
void yhq()
{
cout<<"优惠券"<<endl;
}
};
void main()
{
ProxySubject* pro=new ProxySubject();
    pro->sellBook();
}

0 0