1. 程式人生 > >回撥函式簡析

回撥函式簡析

//類A
class
A {   public:
    A();   
void func();   private:   B m_b; } //類B typedef void (MyFunc)(); class B { public:
B(MyFunc f);
private:
MyFunc m_f; } //A的建構函式 A::A()
{   m_b
= new B(A::func); //將A的成員函式注入到B中.當B的物件執行m_f()時將回調執行
}
//B的建構函式
B::B(MyFunc f)
{
  m_f = f;
}

 本質:將函式指標作為函式引數傳遞。(函式指標就是回撥函式,實際的任務執行者。)