0

インターフェイスを次のように定義する抽象クラスのこのコードを読んでいました:-

class Subject;
class Observer {
public:
virtual ~ Observer();
virtual void Update(Subject* theChangedSubject) = 0;//can someone tell what this method    
does
protected:
Observer();
};
4

1 に答える 1

0

Update()関数は実際にはまたの一部である必要がありclass Subjectます。
これは、状態が変化するたびに呼び出す必要があります。

Subject、すべてのリストを維持し、すべてのメンバーの関数をObservers呼び出す必要があります。これは通常、それぞれのポインタ/参照を保持し、それぞれによって実装された個々の機能を呼び出すことによって行われます。Update()ObserversObserversUpdate()Observer

そして、この関数が何をするかについてのあなたの質問についてUpdate()は、状態が変化した場合に、それが期待されることをしなければなりません。

于 2012-10-23T07:55:20.997 に答える