C++中回調(diào)函數(shù)及函數(shù)指針的實(shí)例詳解
更新時間:2017年10月31日 15:25:22 作者:xy913741894
這篇文章主要介紹了C++中回調(diào)函數(shù)及函數(shù)指針的實(shí)例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下
C++中回調(diào)函數(shù)及函數(shù)指針的實(shí)例詳解
如何獲取到類中函數(shù)指針
實(shí)現(xiàn)代碼:
//A類與B類的定義
class A
{
public:
void Test()
{
cout << "A::Test()" << endl;
}
};
class B : public A
{
public:
void Test()
{
cout << "B::Test()" << endl;
}
};
//定義類的成員函數(shù)指針
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成員函數(shù)必須為public,否則會報錯
B_mFun pBFun = &(B::Test); //Note:Test成員函數(shù)必須為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;
}
如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
您可能感興趣的文章:
相關(guān)文章
C++的sstream標(biāo)準(zhǔn)庫詳細(xì)介紹
以下是對C++中的的sstream標(biāo)準(zhǔn)庫進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下2013-09-09
C++獲取文件哈希值(hash)和獲取torrent(bt種子)磁力鏈接哈希值
這二個代碼一個是獲取文件哈希值的,另外一個是獲取torrent文件磁力鏈接的哈希值2013-11-11
OpenCV邊緣提取算法流程的實(shí)現(xiàn)(附DEMO)
本文主要介紹了OpenCV邊緣提取算法流程的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08

