9.27

实验14:代理模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 

1、理解代理模式的动机,掌握该模式的结构;

2、能够利用代理模式解决实际问题。

 

[实验任务一]:婚介所

婚介所其实就是找对象的一个代理,请仿照我们的课堂例子论坛权限控制代理完成这个实际问题,其中如果年纪小于18周岁,婚介所会提示对不起,不能早恋!,并终止业务。

实验要求:

1. 提交类图;

2. 提交源代码;

3. 注意编程规范。、

 

复制代码
#include <iostream>
#include <string>
using namespace std;


class Person
{
public:
    string name;
    int age;
    Person(string n,int a)
    {
        name=n;
        age=a;
    }
};

class Center
{
protected:
    string name;
public:
    Center(string n){name=n;}
    virtual void findlove(Person* person)=0;
};


class Marry:public Center
{
public:
    Marry(string name):Center(name){}
    void findlove(Person* person)
    {
        if(person->age<18)
        {
            cout <<name<<":"<<person->name<<",对不起!不能早恋!" << endl;
        }
        else if(person->age<100)
        {
            cout <<name<<":"<<person->name<<",我们会为您找到合适的伴侣!" << endl;
        }
        else
        {
            cout <<name<<":"<<person->name<<",对不起!您年龄太大了!" << endl;
        }
    }
};



int main()
{
    Center* center1,* center2;
    center1=new Marry("婚介");
    center2=new Marry("婚介");
    Person* b1=new Person("喜羊羊",29);
    Person* b2=new Person("美羊羊",16);
    center1->findlove(b1);
    center2->findlove(b2);
    return 0;
}
复制代码

 

posted @   奶油冰激凌  阅读(1)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示