20 lines
273 B
C
20 lines
273 B
C
|
#pragma once
|
||
|
#include <list>
|
||
|
class Observer;
|
||
|
|
||
|
class Subject
|
||
|
{
|
||
|
public:
|
||
|
Subject();
|
||
|
virtual ~Subject();
|
||
|
|
||
|
virtual void addObserver(Observer*);
|
||
|
virtual void delObserver(Observer*);
|
||
|
|
||
|
protected:
|
||
|
|
||
|
virtual void notify(Subject*);
|
||
|
|
||
|
private:
|
||
|
std::list<Observer*> mp_Observers;
|
||
|
};
|