成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳解什么是C#回調(diào)

開發(fā) 后端
什么是C#回調(diào)?有人這么說(shuō):“發(fā)布者說(shuō),當(dāng)我遇到什么事的時(shí)候,我就通知大家,有需要通知的就把電話號(hào)碼給我,等那件事發(fā)生時(shí),我就打電話通知大家。”而在這篇文章中則詳細(xì)介紹了什么是回調(diào)函數(shù)以及回調(diào)函數(shù)的機(jī)制

1.什么是回調(diào)函數(shù)

回調(diào)函數(shù)(callbackFunction),顧名思義,用于回調(diào)的函數(shù)。回調(diào)函數(shù)只是一個(gè)功能片段,由用戶按照回調(diào)函數(shù)調(diào)用約定來(lái)實(shí)現(xiàn)的一個(gè)函數(shù)。回調(diào)函數(shù)是一個(gè)工作流的一部分,由工作流來(lái)決定函數(shù)的調(diào)用(回調(diào))時(shí)機(jī)。回調(diào)函數(shù)包含下面幾個(gè)特性:

屬于工作流的一個(gè)部分;

必須按照工作流指定的調(diào)用約定來(lái)申明(定義);

他的調(diào)用時(shí)機(jī)由工作流決定,回調(diào)函數(shù)的實(shí)現(xiàn)者不能直接調(diào)用回調(diào)函數(shù)來(lái)實(shí)現(xiàn)工作流的功能;

2.C#回調(diào)機(jī)制

C#回調(diào)機(jī)制是一種常見的設(shè)計(jì)模型,他把工作流內(nèi)的某個(gè)功能,按照約定的接口暴露給外部使用者,為外部使用者提供數(shù)據(jù),或要求外部使用者提供數(shù)據(jù)。

回調(diào)機(jī)制圖

如上圖所示,工作流提供了兩個(gè)對(duì)外接口(獲取參數(shù)、顯示結(jié)果),以回調(diào)函數(shù)的形式實(shí)現(xiàn)。

“獲取參數(shù)”回調(diào)函數(shù),需要工作流使用者設(shè)定工作流計(jì)算需要的參數(shù)。

“顯示結(jié)果”回調(diào)函數(shù),提供計(jì)算結(jié)果給工作流使用者。

3.C#回調(diào)機(jī)制應(yīng)用

使用回調(diào)機(jī)制,可以為工作流實(shí)現(xiàn)擴(kuò)展。可以把工作流中需要用戶干預(yù)的,或需要提供給用戶的數(shù)據(jù)以回調(diào)的模式提供給用戶。而用戶不需要知道整個(gè)工作的流程,只需知道回調(diào)函數(shù)的說(shuō)明就可以使用工作流模塊提供的功能,這對(duì)信息的隱藏也是有作用的。

4.回調(diào)機(jī)制的實(shí)現(xiàn)形式

回調(diào)函數(shù)

虛擬函數(shù)

事件

example:以虛函數(shù)實(shí)現(xiàn)回調(diào)機(jī)制(有時(shí)間補(bǔ)充C#版本)

  1. Code  
  2. classCWorkFlow  
  3. {  
  4. voidinit()  
  5. {  
  6. _a=0;  
  7. _b=0;  
  8. }  
  9.  
  10. int_a;  
  11. int_b;  
  12. public:  
  13.  
  14. voidStart()  
  15. {  
  16. //初始化  
  17. init();  
  18. //調(diào)用處理數(shù)據(jù)  
  19. Handle(a,b);  
  20. //報(bào)告結(jié)果  
  21. Report(a,b);  
  22. }  
  23.  
  24. virtualvoidHandle(int&a,int&b)=0;  
  25. virtualvoidReport(intiRet)=0;  
  26. };  
  27.  
  28.  
  29. classCMain:  
  30. publicCWorkFlow  
  31. {  
  32. public:  
  33. voidHandle(int&a,int&b)  
  34. {  
  35. a=a+b/2;  
  36. }  
  37.  
  38. voidReport(intiRet)  
  39. {  
  40. printf("iRet=%d\n",iRet);  
  41. }  
  42. };  
  43.  
  44. //application  
  45.  
  46. intmain()  
  47. {  
  48. CMainmain;  
  49. main.Start();  

本文來(lái)自王之永博客園博文《C#回調(diào)

【編輯推薦】

  1. C#參數(shù)類型學(xué)習(xí)筆記
  2. 處理C#消息的方法
  3. C#重載LoadPostData方法
  4. 概述C#復(fù)合控件構(gòu)建
  5. C# JavaScript函數(shù)使用
責(zé)任編輯:彭凡 來(lái)源: 博客園
相關(guān)推薦

2009-08-12 10:11:18

C# 回調(diào)函數(shù)

2009-08-19 17:10:09

C#回調(diào)函數(shù)

2009-07-31 16:25:29

C#回調(diào)函數(shù)API應(yīng)用

2021-12-07 00:10:25

C# 微信支付

2009-09-01 17:51:47

C#拆箱C#裝箱

2009-08-28 12:19:19

C#靜態(tài)方法

2011-06-15 11:05:14

C語(yǔ)言回調(diào)函數(shù)

2009-09-07 16:13:56

C# MessageB

2009-07-30 18:20:21

C#繼承

2009-08-24 11:23:41

C# TimeLabe

2009-09-01 16:07:04

C#命名規(guī)約

2009-08-14 17:09:48

C#引用類型

2010-02-04 16:07:39

C++回調(diào)函數(shù)

2009-08-25 18:04:30

C#實(shí)現(xiàn)Singlet

2009-08-18 10:14:19

C#插件構(gòu)架

2009-08-20 13:47:57

C#驗(yàn)證輸入方法

2009-08-20 11:01:51

C#操作內(nèi)存

2009-09-11 12:31:52

C#實(shí)例詳解TypeConvert

2009-09-07 06:48:13

C#透明窗體

2009-09-09 18:50:23

C# 加密RSA
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产www成人 | 狠狠干天天干 | 国产福利在线免费观看 | 国产高清免费 | 国产一区二区三区在线看 | 免费a网站| 亚洲欧美一区二区三区1000 | 91精品国产91久久综合桃花 | 久久久高清| 成人亚洲一区 | 国产91综合 | 日韩欧美精品一区 | 欧美在线一区二区三区 | 中文字幕在线看 | 中文字幕国产 | 日本高清中文字幕 | 亚洲视频在线免费观看 | 亚洲国产精品成人久久久 | 婷婷亚洲综合 | 欧美精品综合 | 一区二区三区四区不卡视频 | 99热精品在线 | 精品成人佐山爱一区二区 | www.日本国产 | 免费看爱爱视频 | 亚洲欧美精品 | 欧美一区二区三区免费在线观看 | 在线播放国产一区二区三区 | 日韩精品久久 | 99热热| 成人国产综合 | www.99精品 | 国产精品久久久久久久免费大片 | 日韩爱爱网| 在线成人免费视频 | 综合久久99 | 成人午夜av | 欧洲精品视频一区 | 日韩精品久久久久 | 影音先锋成人资源 | 亚洲精品不卡 |