设计模式-观察者模式(c++)

技术设计模式-观察者模式(c++) 设计模式-观察者模式(c++)当股票的价格上涨或下降5%时,会通知持有该股票的股民,当股民听到价格上涨的消息时会买股票,当价格下降时会大哭一场。
类图#include

设计模式-观察者模式(c)

当股票的价格上涨或下降5%时,会通知持有该股票的股民,当股民听到价格上涨的消息时会买股票,当价格下降时会大哭一场。

类图

#包括牡蛎

#包括

#includelist

使用命名空间标准;

观察者类{

public :虚拟空钱up()=0;

virtual void money DoWn()=0;//必须纯虚函数

};

类别GuMin:public公共观察者{

私人:字符串名称;

公开号:顾敏(字符串n){ 0

//TODO自动生成的构造函数存根

名称=n;

}

清空资金(){ 0

//TODO自动生成的方法存根

' coutname '买了一些股票(股票升了)" endl

}

void money DoWn(){ 0

//TODO自动生成的方法存根

' coutname '股票降价了,哭了恩德尔

}

};

课程主题{

受保护的: ListObserver * olist

公众号:

主题(){ 0

//TODO自动生成的构造函数存根

}

无效添加(观察者* o){ 0

奥利斯特。push _ back(o);

}

无效删除(观察者* o){ 0

奥利斯特。移除(o);

}

虚拟空间用完(双a){ };

虚拟无效(双a){ };

};

班级古票:公共科目{

公众号:

谷朴(){ 0

}

清空(双a)

if(a 0.05){ 0

//ListObjector * :迭代器p=olist。begin();

for(ListObjector * : const _ iterator p=olist。begin();p!=olist。cend();p){ 0

(* p)-moneyUp();

//(*)p .钱涨了();

}

}

}

作废(双a)

if(a 0.05){ 0

listObjector * :迭代器p=olist。begin();

for(;p!=olist。end();p){ 0

(* p)-money DoWn();

}

}

}

};

int main(){ 0

//TODO自动生成的构造函数存根

主题*f=新古朴();

//主题

顾敏*g1=新顾敏('李峰股民');

顾敏*g2=新顾敏('王磊股民');

f-add(G1);

f-add(G2);

cout '股票升了恩德尔

f-up(0.1);

cout '比率小于0.05 ' endl

f-down(0.001);

cout '股票降了恩德尔

f-down(0.1);

cout '比率小于0.05 ' endl

f-down(0.001);

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/107440.html

(0)

相关推荐

  • 设计模式07-装饰模式,Decorator)

    技术设计模式07-装饰模式,Decorator) 设计模式07-装饰模式(Decorator)通过实现与被装饰类实现的相同接口或父类,并将被装饰类作为属性注入到装饰器对象中来完成对装饰器模式的应用。装饰

    礼包 2021年10月28日
  • 如何使用Visual Studio项目转换功能

    技术如何使用Visual Studio项目转换功能这篇文章将为大家详细讲解有关如何使用Visual Studio项目转换功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前一个版本使用

    攻略 2021年12月4日
  • Python操作语言的特点都有哪些

    技术Python操作语言的特点都有哪些Python操作语言的特点都有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Python操作语言是软件开发领域

    攻略 2021年10月28日
  • AOP三剑客的研究与运用

    技术AOP三剑客的研究与运用 AOP三剑客的研究与运用简介
    APT:APT(Annotation Processing Tool)即注解处理器,是一种处理注解的工具,确切的说它是javac的一个工具,它

    礼包 2021年12月20日
  • 简略讲解OpenWrt的路由配置(单播路由/静态路由、策略路由、IGMP组播路由)

    技术简略讲解OpenWrt的路由配置(单播路由/静态路由、策略路由、IGMP组播路由) 简略讲解OpenWrt的路由配置(单播路由/静态路由、策略路由、IGMP组播路由)一、分类智能路由器上最重要的功能

    礼包 2021年11月5日
  • 703. 数据流中的第 K 大元素

    技术703. 数据流中的第 K 大元素 703. 数据流中的第 K 大元素设计一个找到数据流中第 k 大元素的类(class)。注意是排序后的第 k 大元素,不是第 k 个不同的元素。
    请实现 KthL

    礼包 2021年12月20日