设计模式-观察者模式(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)

相关推荐

  • js中判断字符串时间类型大小(js中如何判断时间大小写)

    技术怎样用JS判断日期数字整数和特殊字符怎样用JS判断日期数字整数和特殊字符,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。如何在用一个程序检测所输入的内

    攻略 2021年12月14日
  • 最大公约数之和

    技术最大公约数之和 最大公约数之和本文主要讲一下最大公约数的和的推导过程(因为其太过经典,其实是博主老忘)。
    原式:
    \[\sum_{i = 1}^n\sum_{j = 1}^n\gcd(i, j)
    \

    礼包 2021年12月21日
  • 二分查询

    技术二分查询 二分查询二分查询:package com.cc;/** * @Author: cc * @Create: 2021/12/20 * 二分查询实现步骤: * 1.前提:有已排序数组A (假设

    礼包 2021年12月22日
  • 什么是抽象工厂模式

    技术什么是抽象工厂模式这篇文章主要介绍“什么是抽象工厂模式”,在日常操作中,相信很多人在什么是抽象工厂模式问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”什么是抽象工厂模式”的疑惑有所帮助!

    攻略 2021年10月28日
  • 怎么拒绝软件启动时sql server报错(sqlserver2008实例已存在怎么办)

    技术如何解析由于启动用户实例的进程时出错导致无法生成SQL Server的用户实例今天就跟大家聊聊有关如何解析由于启动用户实例的进程时出错导致无法生成SQL Server的用户实例,可能很多人都不太了解,为了让大家更加了

    攻略 2021年12月14日
  • 怎么解决Mysql中的Last_Errno报错问题

    技术怎么解决Mysql中的Last_Errno报错问题本篇内容主要讲解“怎么解决Mysql中的Last_Errno报错问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解

    攻略 2021年11月18日