⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 observer.h

📁 c++程序
💻 H
字号:
//Observer.h
#ifndef _OBSERVER_H_ 
#define _OBSERVER_H_

#include "Subject.h"
#include <string> 
using namespace std;

typedef string State;

class Observer 
{ 
public: 
	virtual ~Observer();
	virtual void Update(Subject* sub) = 0;
	virtual void PrintInfo() = 0;
protected: 
	Observer();
	State _st;
private:
};

class ConcreteObserverA:public Observer 
{ 
public: 
	virtual Subject* GetSubject(); 
	ConcreteObserverA(Subject* sub);
	virtual ~ConcreteObserverA();
	//传入Subject作为参数,这样可以让一个View属于多个的Subject。 
	void Update(Subject* sub);
	void PrintInfo();
protected:
private: 
	Subject* _sub;
};

class ConcreteObserverB:public Observer 
{ 
public: 
	virtual Subject* GetSubject(); 
	ConcreteObserverB(Subject* sub);
	virtual ~ConcreteObserverB();
	//传入Subject作为参数,这样可以让一个View属于多个的Subject。 
	void Update(Subject* sub);
	void PrintInfo();
protected:
private: 
	Subject* _sub;
};

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -