subject.h

来自「Head First 设计模式原书用的是JAVA写的代码」· C头文件 代码 · 共 32 行

H
32
字号
#pragma once

class CSubject
{
public:
	CSubject(void);
	~CSubject(void);
	virtual void registerObserver(CObserver *Observer)=0;
	virtual void removeObserver(CObserver *Observer)=0;
	virtual void notifyObservers()=0;
};

//static int MaxObservsersNum=100;
class CWeatherData :
	public CSubject
{
private:

	std::list  <CObserver*> Observers;
	float temperature;
	float humidity;
	float pressure;
public:
	CWeatherData(void);
	~CWeatherData(void);
	virtual void registerObserver(CObserver* Observer);
	virtual void removeObserver(CObserver* Observer);
	virtual void notifyObservers();
	void measurementsChanged();
	void setMeasurements(float temperature, float humidity, float pressure);
};

⌨️ 快捷键说明

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