Observer模式實踐

2022-02-07 10:18:39 字數 714 閱讀 7923

observer 模式在實踐中的應用場景:

為 point 類設計乙個資料繫結機制,當其座標 x 或 y 被更改時,可以通知外界其更改的過程。將更改過程列印在控制台上。考慮使用松耦合設計。

**:

#include #include 

using

namespace

std;

struct

observer;

struct

subject

;struct

observer

;struct consoleobserver : public

observer

};class point : public

subject

virtual

void detach(observer*o)

virtual

void

notify()

point(

int x, int

y) : _x(x), _y(y) {}

void setx(int

x)

void sety(int

y)

intgetx()

intgety()

};int

main()

設計模式 Observer模式

目錄 具體實現總結 觀察者模式 發布 訂閱模式 是一種行為型模式,定義一系列物件之間的一對多關係,當乙個物件改變 更新狀態時,依賴它的都會收到通知改變或者更新。在此種模式中,乙個目標物件管理所有相依於它的觀察者物件,並且在它本身的狀態改變時主動發出通知。這通常透過呼叫各觀察者所提供的方法來實現。此種...

設計模式Observer

observer設計模式的定義 定義了物件之間的一對多的依賴,這樣以來,當乙個物件改變狀態時,它的所有依賴者都會受到通知並自動更新。ifndef subjec h define subjec h include observer.h class subject subject subject sub...

Observer設計模式

observer設計模式是針對 乙個物件對多個物件中,乙個物件發生狀態改變,其他附屬物件發生相應的更新。是一種松耦合的設計模式。例子 假設我們有個高檔的熱水器,我們給它通上電,當水溫超過95度的時候 1 揚聲器會開始發出語音,告訴你水的溫度 2 液晶屏也會改變水溫的顯示,來提示水已經快燒開了。現在我...