欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++ 中回調(diào)函數(shù)詳解及簡單實例

 更新時間:2017年06月15日 15:19:53   投稿:lqh  
這篇文章主要介紹了C++ 中回調(diào)函數(shù)詳解及簡單實例的相關(guān)資料,需要的朋友可以參考下

C++ 中回調(diào)函數(shù)詳解及簡單實例

回調(diào)函數(shù)調(diào)用關(guān)系圖

 

對于第一種情況,主程序可以從執(zhí)行到回調(diào)函數(shù),也可以不執(zhí)行回調(diào)函數(shù),關(guān)鍵看宿主函數(shù)是否調(diào)用了回調(diào)函數(shù)。

對于第二種情況,主程序可以從執(zhí)行到回調(diào)函數(shù),也可以不執(zhí)行回調(diào)函數(shù),關(guān)鍵看宿主函數(shù)是否調(diào)用了回調(diào)函數(shù)。主程序不知道宿主函數(shù)什么時候調(diào)用回調(diào)函數(shù),因為調(diào)用函數(shù)啟動了線程,這樣,主程序就不必關(guān)心宿主函數(shù)什么時候調(diào)用回調(diào)函數(shù)了,主程序可以釋放出來做自己的事了。

代碼示例

#include <stdio.h> 
 
typedef void(*lpFunc)(void *, char *);  // 函數(shù)指針 
// 回調(diào)函數(shù)的宿主函數(shù),在這里回調(diào)用函數(shù)被使用, 
void GetCallBack(void * lpVoid, lpFunc callback) 
{ 
    callback(lpVoid, "test"); 
} 
  
  
class A{ 
public: 
    A(){}; 
    
    void outName(char szAlarm[]){ 
       printf("my name is %s /n", szAlarm);    
    } 
    
    // 被宿主調(diào)用的回調(diào)函數(shù) 
    static void fCallback(void *lpVoid, char szAlarm[]){ 
       A * p = (A*)(lpVoid); 
       p->outName(szAlarm); 
    } 
    
    //調(diào)用外部宿主函數(shù),當(dāng)Test函數(shù)調(diào)用過宿主函數(shù)以后,Test就再也不關(guān)心宿主函數(shù) 
    //什么時候調(diào)用回調(diào)函數(shù)了,因為那時宿主函數(shù)自己的事了 
    void Test(){ 
       GetCallBack(this, fCallback); 
    } 
}; 
 
int main(void) 
{ 
    A a; 
    a.Test(); 
} 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • C++中stringstream的用法和實例

    C++中stringstream的用法和實例

    下面小編就為大家?guī)硪黄狢++中stringstream的用法和實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • C++實現(xiàn)簡單猜數(shù)字小游戲

    C++實現(xiàn)簡單猜數(shù)字小游戲

    這篇文章主要為大家詳細(xì)介紹了C++實現(xiàn)簡單猜數(shù)字小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Qt實現(xiàn)自定義驗證碼輸入框控件的方法

    Qt實現(xiàn)自定義驗證碼輸入框控件的方法

    本文主要介紹了Qt實現(xiàn)自定義驗證碼輸入框控件的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • QT實現(xiàn)文件傳輸功能

    QT實現(xiàn)文件傳輸功能

    這篇文章主要為大家詳細(xì)介紹了QT實現(xiàn)文件傳輸功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C++異步操作future和aysnc與function和bind

    C++異步操作future和aysnc與function和bind

    這篇文章主要介紹了C++異步操作future和aysnc與function和bind,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • c語言實現(xiàn)單鏈表算法示例分享

    c語言實現(xiàn)單鏈表算法示例分享

    這篇文章主要介紹了c語言實現(xiàn)單鏈表算法示例,需要的朋友可以參考下
    2014-02-02
  • 詳解C++設(shè)計模式編程中責(zé)任鏈模式的應(yīng)用

    詳解C++設(shè)計模式編程中責(zé)任鏈模式的應(yīng)用

    這篇文章主要介紹了C++設(shè)計模式編程中責(zé)任鏈模式的應(yīng)用,責(zé)任鏈模式使多個對象都有機(jī)會處理請求,從而避免請求的發(fā)送者和接收者之間的耦合關(guān)系,需要的朋友可以參考下
    2016-03-03
  • 海量數(shù)據(jù)處理系列之:用C++實現(xiàn)Bitmap算法

    海量數(shù)據(jù)處理系列之:用C++實現(xiàn)Bitmap算法

    本篇文章是對用C++實現(xiàn)Bitmap算法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • 用C語言判斷一個二叉樹是否為另一個的子結(jié)構(gòu)

    用C語言判斷一個二叉樹是否為另一個的子結(jié)構(gòu)

    這篇文章主要介紹了用C語言判斷一個二叉樹是否為另一個的子結(jié)構(gòu),是數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)當(dāng)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-08-08
  • C語言自研定時器計劃任務(wù)語法詳解

    C語言自研定時器計劃任務(wù)語法詳解

    市面主流定時器計劃任務(wù)語法: cron ,但是使用起來非常難受,設(shè)計的比較非人性話語法,我想一般人都沒幾個記住的,所以本文將自研定時器計劃任務(wù)語法,需要的可以參考一下
    2022-09-09

最新評論