当前位置: 首页 > news >正文

现在哪个招聘网站做的比较好新手开装修公司怎样做

现在哪个招聘网站做的比较好,新手开装修公司怎样做,做网站投入,nginx php7 wordpress目录 观察者模式#xff08;Observer Pattern#xff09; 实际应用 股票价格监控系统 发布-订阅系统 总结 观察者模式#xff08;Observer Pattern#xff09; 观察者模式是一种行为型设计模式#xff0c;它定义了对象间的一对多依赖关系。当一个对象的状态发生改变…目录 观察者模式Observer Pattern 实际应用 股票价格监控系统 发布-订阅系统 总结 观察者模式Observer Pattern 观察者模式是一种行为型设计模式它定义了对象间的一对多依赖关系。当一个对象的状态发生改变时所有依赖于它的对象都会得到通知并自动更新。观察者模式主要包含以下角色 1. Subject主题保存对观察者的引用并提供注册和注销观察者的方法。 2. Observer观察者定义一个更新接口用于接收主题的通知。 3. ConcreteSubject具体主题具体实现主题维护其状态并在状态改变时通知观察者。 4. ConcreteObserver具体观察者具体实现观察者响应主题的通知并进行相应的更新。 实际应用 股票价格监控系统 -- 实现一个股票价格监控系统当股票价格发生变化时所有注册的观察者例如投资者都会收到通知。 #include iostream #include vector #include string #include memory// 观察者接口 class Observer { public:virtual void update(const std::string stockName, float price) 0; };// 主题接口 class Subject { public:virtual void registerObserver(std::shared_ptrObserver observer) 0;virtual void removeObserver(std::shared_ptrObserver observer) 0;virtual void notifyObservers() 0; };// 具体主题 class Stock : public Subject { private:std::string name;float price;std::vectorstd::shared_ptrObserver observers;public:Stock(const std::string name, float price) : name(name), price(price) {}void setPrice(float newPrice) {price newPrice;notifyObservers();}float getPrice() const {return price;}void registerObserver(std::shared_ptrObserver observer) override {observers.push_back(observer);}void removeObserver(std::shared_ptrObserver observer) override {observers.erase(std::remove(observers.begin(), observers.end(), observer), observers.end());}void notifyObservers() override {for (auto observer : observers) {observer-update(name, price);}} };// 具体观察者 class Investor : public Observer { private:std::string name;public:Investor(const std::string name) : name(name) {}void update(const std::string stockName, float price) override {std::cout Investor name is notified that stockName price changed to price std::endl;} };// 客户端代码 int main() {auto stock std::make_sharedStock(AAPL, 150.0);auto investor1 std::make_sharedInvestor(Alice);auto investor2 std::make_sharedInvestor(Bob);stock-registerObserver(investor1);stock-registerObserver(investor2);stock-setPrice(155.0);stock-setPrice(160.0);stock-removeObserver(investor1);stock-setPrice(165.0);return 0; }发布-订阅系统 -- 实现一个简单的发布-订阅系统当发布者发布新消息时所有订阅者都会收到通知。 #include iostream #include vector #include string #include memory// 观察者接口 class Subscriber { public:virtual void update(const std::string message) 0; };// 主题接口 class Publisher { public:virtual void registerSubscriber(std::shared_ptrSubscriber subscriber) 0;virtual void removeSubscriber(std::shared_ptrSubscriber subscriber) 0;virtual void notifySubscribers() 0; };// 具体主题 class NewsPublisher : public Publisher { private:std::string latestNews;std::vectorstd::shared_ptrSubscriber subscribers;public:void publishNews(const std::string news) {latestNews news;notifySubscribers();}void registerSubscriber(std::shared_ptrSubscriber subscriber) override {subscribers.push_back(subscriber);}void removeSubscriber(std::shared_ptrSubscriber subscriber) override {subscribers.erase(std::remove(subscribers.begin(), subscribers.end(), subscriber), subscribers.end());}void notifySubscribers() override {for (auto subscriber : subscribers) {subscriber-update(latestNews);}} };// 具体观察者 class ConcreteSubscriber : public Subscriber { private:std::string name;public:ConcreteSubscriber(const std::string name) : name(name) {}void update(const std::string message) override {std::cout Subscriber name received: message std::endl;} };// 客户端代码 int main() {auto publisher std::make_sharedNewsPublisher();auto subscriber1 std::make_sharedConcreteSubscriber(Alice);auto subscriber2 std::make_sharedConcreteSubscriber(Bob);publisher-registerSubscriber(subscriber1);publisher-registerSubscriber(subscriber2);publisher-publishNews(Breaking News: Observer Pattern in Action!);publisher-publishNews(Latest Update: New Design Patterns Discovered!);publisher-removeSubscriber(subscriber1);publisher-publishNews(Exclusive: Observer Pattern Simplified!);return 0; }总结 观察者模式帮助我们定义了对象间的一对多依赖关系使得对象之间的通信变得更加灵活和可扩展。
http://www.hkea.cn/news/14412464/

相关文章:

  • 住房和城乡建设部网站防排烟网站首页404
  • 在床上做很黄很暴力网站个人域名备案需要什么
  • 如何防止网站挂马郑州做网站的专业公司
  • 做网站 证书 浏览器ps做网站logo
  • 佛山小网站建设seo推广哪家好
  • 软件介绍网站模板html5网站开发软件
  • 做公司员工福利的网站都有哪些中国房产网
  • 免费的建手机网站培训网站网站建设
  • wordpress站群管理破解版网站项目的介绍
  • 如何编辑网站模板网站制作流程分为哪三步
  • 做网站收费多少新品发布会ppt参考
  • 怎么查公司网站可信度邢台做网站地方
  • 网站开发得多少钱wordpress倒计时代码
  • 集团网站建设制作费用线上营销和线下营销
  • 社交型网站首页面设计分析电子政务与网站建设 总结
  • 网站升级中网站建设移交内容
  • 手机网站怎么放到桌面上企业网站优化分为两个方向
  • 乐安网站建设站外推广策划书
  • 百家号网站开发属于什么领域如何查询网站空间商
  • 网站怎么做移动图片不显示不出来吗如何制作ppt视频教程
  • 贞丰县住房和城乡建设局网站福州网站设计企业网站建站
  • 网站 管理系统建设企业网站的规划
  • 网站开发需要哪些人员网站内部优化
  • 网站怎么做单页app公司
  • 茂名住房和城乡建设局网站优化二十条措施建议
  • 公司里面php开发一个网站的流程怎么做卖保险的网站
  • 网站开发公司 商业计划书网站源码提取
  • 平台网站建设设计天元建设集团有限公司现状
  • 那家网站建设好做古风头像的网站
  • 嘉兴网站公司冒用他人公司做网站