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();
    }
  • 相关阅读:
    深度学习面试问题
    重新学习pytorch的库函数等..
    新电脑的操作系统win10的所有设置问题汇总
    二叉搜索树,和红黑树,
    Most common words
    Word histogram
    Random numbers
    Word frequency analysis
    DSU
    Sequences of sequences
  • 原文地址:https://www.cnblogs.com/457220157-FTD/p/4022789.html
Copyright © 2011-2022 走看看