假設我有一些觀察過的類和一個觀察到的類,我想通知觀察者,但是以一種呈現的方式。修改過的觀察者設計模式C++
觀察到的類具有指向類中觀察方法的指針數組。 所以基本上,當我在觀察類中調用notifyObservers時,它會經過這個數組,只需在觀察者中調用必要的函數。 這個解決方案是由我的老師介紹的,而且我很難讓它工作,他很傷心這個解決方案不需要持有指向obervers的指針(比如Observer設計模式)只能指向方法。但我怎麼存儲指針的方法是知道誰應該叫他們
我想是這樣的:
class A {
public:
void method();
}
A a;
void(A::*ptr)()=&a.method;
void (*ptr)()=&a.method;
這顯然沒有奏效。 有沒有辦法讓它工作?
很明顯,這隻適用於C++ 11。或者可以使用提升。 – betabandido