在C++編程中,需要廣泛使用回調函數,互聯網上也有許多關于回調函數的解釋,但其中許多都是針對一種或兩種特定類型,武林技術頻道小編將為大家帶來詳解C++中回調函數及函數指針的實例。
C++中回調函數及函數指針的實例詳解
如何獲取到類中函數指針
實現代碼:
//A類與B類的定義class A{public: void Test() { cout << "A::Test()" << endl; }};class B : public A{public: void Test() { cout << "B::Test()" << endl; }};//定義類的成員函數指針typedef void (A::*A_mFun)(void);typedef void (B::*B_mFun)(void);int main(){ //Code A a; B b; A_mFun pAFun = &(A::Test); //Note:Test成員函數必須為public,否則會報錯 B_mFun pBFun = &(B::Test); //Note:Test成員函數必須為public,否則會報錯 (a.*pAFun)(); //輸出A::Test() (b.*pBFun)(); //輸出B::Test() (b.*pAFun)(); //輸出A::Test() A* pA = &a; B* pB = &b; (pA->*pAFun)(); //輸出A::Test() (pB->*pBFun)(); //輸出B::Test() (pB->*pAFun)(); //輸出A::Test(),B*變量可賦值給A*變量 return 0;}上文是武林技術頻道小編為大家介紹的詳解C++中回調函數及函數指針的實例,相信大家都了解的差不多了,武林技術頻道其他欄目還有很多技術知識哦。
新聞熱點
疑難解答
圖片精選