函式指標在MFC中的應用

2021-06-20 07:58:38 字數 899 閱讀 7138

馬上就過年了,希望奮鬥在一線的碼農順利收工,準備好年貨過大年!提前給大家拜個早年。本系列的第三篇來到了虛函式這塊,可能好多人看到這個概念就發怵,聽我慢慢講來......

在實際的開發工作中,為了提高**的重用性,編寫通用的功能模組,往往需要設計處理幾種不同物件的通用程式。下面給了例子

//顯示8進製數

cstring displayoctal(const int number)

//顯示10進製數

cstring displaydecimal(const int number)

//顯示16進製制數

cstring displayhexadecimal(const int number)

//函式指標的定義

typedef cstring(*pdisplayfunc)(const int);

//定義新的函式使用函式指標

cstring displaynumber(pdisplayfunc pfuc,const int number)

void cmy20140124dlg::onbnclickedbutton1()

示例中的定義了乙個通用函式displaynumber,功能是以各種格式顯示數字。兩個引數,乙個是函式位址(即函式名稱),另乙個就是需要顯示的數字。使用中只需要傳遞適當的實參,函式就能正常工作。如果客戶的需求發生變化,如果要顯示2進製數,僅需要新增void dispaybinary(const int number)即可。 通用函式不用變化。顯然函式指標給函式增添了靈活性。

這就是c++的動態聯編。編譯器在編譯階段並不能確切知道將要呼叫的函式,只有在程式執行時才能確定將要呼叫的函式。

作為虛函式的引入篇不能寫的過多,以免消化不了。接下來的一篇的一篇進入虛函式,敬請期待!

C 函式指標 在OC中應用

1.底層sdk中的一段 定義函式指標型別 int const int,const int,const int typedef int videocallback const int msg1,const int msg2,const int msg3 void setvideocallback vi...

在MFC類中各種類的指標的獲取和應用

注 從檢視類中獲得主幀視窗類指標 用函式 cwnd getparentframe 或afxgetmainwnd 也 可達到目的。getparentframe 的工作原理是在父視窗鏈中搜尋,直到找到cframewnd或其派生類為止,並返回其指標。cmainframe cwnd getparentfra...

在MFC類中各種類的指標的獲取和應用

獲得cmainframe 獲得cchildframe 獲得cdocument 獲得cview afxgetmainwnd m pmainwnd afxgetmainwnd mdigetactive afxgetmainwnd getactiveframe sdi afxgetmainwnd geta...