zoukankan      html  css  js  c++  java
  • 设计模式4-代理模式

    一、我的描述

    为其他对象提供一种代理,以对这个对象进行访问的控制,外界直接操作的不是对象本身。最通俗易懂的就是,有一个男孩特别喜欢一个特别漂亮的男孩,但是这个男孩不认识这个女孩,就让另外认识这个女孩的男孩跟这个女孩送花,从而达到追求这个女孩的目的。我们生活中最常见的应用如: 邮件代理服务器:邮件不是直接发给我们的的,而是先发给邮件代理服务器,然后由服务器发给我们;还有如网页中图片的下载等等

    二、UML

    三、我的代码

    #include<iostream>
    using namespace std;
    #include <string>
    
    class BeautifyGirl {
    public:
        BeautifyGirl(string n) : name(n) {}
        string Name() {
            return name;
        }
    private:
        string name;
    };
    
    class PursuitBoy {
    public:
        PursuitBoy(BeautifyGirl bg) : bgirl(bg) {
    
        }
        void SendFlowers() {
            cout << "send flowers to " << bgirl.Name() << endl;
        }
    private:
        BeautifyGirl bgirl;
    };
    
    class MiddleBoy {
    public:
        MiddleBoy(BeautifyGirl bgirl) : pboy(bgirl){
    
        }
        void SendFlowers() {
            pboy.SendFlowers();
        }
    private:
        PursuitBoy pboy;
    };
    
    int main()
    {
        BeautifyGirl bgirl("jones");
        MiddleBoy mboy(bgirl);
        mboy.SendFlowers();
    }
  • 相关阅读:
    初识spring
    关于导入别人的web项目,tomcat无法显示的问题
    doPost无法跳转显示信息,只能下载文件查看
    socket网络编程
    log日志文件
    第三方模块安装
    __name__ __doc__ __package__
    格式化
    导入模块
    python正则表达式补充
  • 原文地址:https://www.cnblogs.com/457220157-FTD/p/4022789.html
Copyright © 2011-2022 走看看