码迷,mamicode.com
首页 > 其他好文 > 详细

代理模型

时间:2018-10-09 15:01:08      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:real   subject   virtual   sub   而不是   virt   prot   操作   col   

class BooKStore
{
public:
    virtual void salebook()
    {
        std::cout<<"BookStore salebook"<<std::endl;
    }
};


class RealStore : public BooKStore
{
public:
    virtual void salebook()
    {
        std::cout<<"RealStore salebook"<<std::endl;
    }
};

class DangDangProxy : public BooKStore
{
public:
    virtual void salebook()
    {
        RealStore realstore;
        doubleEleven();
        realstore.salebook();
        std::cout<<"DangDangProxy salebook"<<std::endl;
    }
    void doubleEleven()
    {
        std::cout<<"doubleEleven"<<std::endl;
    }
};

subject (抽象主题角色):真实主题与代理主题的共同接口

RealSubject(真实主题角色):定义了代理角色所代表的真实对象

Proxy(代理主题角色):含有对真实主题角色的引用,代理角色通常在将客户端调用传递给真实主题对象之前或者之后执行某些操作,而不是单纯返回真实的对象。

提示:a中包含b类;a、b类实现协议类protocol

代理模型

标签:real   subject   virtual   sub   而不是   virt   prot   操作   col   

原文地址:https://www.cnblogs.com/mathyk/p/9760161.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!